class Jekyll::Tags::PostComparer

Constants

MATCHER

Attributes

date[RW]
slug[RW]

Public Class Methods

new(name) click to toggle source
# File lib/jekyll/tags/post_url.rb, line 8
def initialize(name)
  all, path, date, slug = *name.sub(/^\//, "").match(MATCHER)
  @slug = path ? path + slug : slug
  @date = Time.parse(date)
end

Public Instance Methods

==(other) click to toggle source
# File lib/jekyll/tags/post_url.rb, line 14
def ==(other)
  slug == post_slug(other) &&
    date.year  == other.date.year &&
    date.month == other.date.month &&
    date.day   == other.date.day
end

Private Instance Methods

post_slug(other) click to toggle source

Construct the directory-aware post slug for a Jekyll::Post

other - the Jekyll::Post

Returns the post slug with the subdirectory (relative to _posts)

# File lib/jekyll/tags/post_url.rb, line 27
def post_slug(other)
  path = other.name.split("/")[0...-1].join("/")
  if path.nil? || path == ""
    other.slug
  else
    path + '/' + other.slug
  end
end