Sha256: 8d47d1a832fb290e9f9d8010d605c4178a073f67531cf30197f7c11a9c8c7bbb

Contents?: true

Size: 569 Bytes

Versions: 3

Compression:

Stored size: 569 Bytes

Contents

module Metamagic
  class Tag
    attr_reader :context, :key, :value

    def initialize(context, key, value)
      @context, @key, @value = context, key, value
    end

    def to_html
      raise "#{self.class.name}#to_html must be overridden to render tag"
    end

    def sort_order
      1000
    end

    def ==(other)
      self.class == other.class && self.key == other.key
    end

    def <=>(other)
      [sort_order, self.class.name] <=> [other.sort_order, other.class.name]
    end

    def method_missing(*args)
      context.send(*args)
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
metamagic-3.0.1 lib/metamagic/tag.rb
metamagic-3.0.0 lib/metamagic/tag.rb
metamagic-3.0.0.beta3 lib/metamagic/tag.rb