Sha256: 672b6d580e6c6266ec285e4c4d29fd989726935008e12f66f11f2d7a54b3bc62
Contents?: true
Size: 917 Bytes
Versions: 1
Compression:
Stored size: 917 Bytes
Contents
require 'forwardable' module Salt class Scanner class Token attr_reader :type attr_reader :values attr_reader :line attr_reader :column extend Forwardable include Comparable def_delegators :to_a, :[] def initialize(type, values, line = 0, column = 0) @type = type.to_s.upcase.intern @values = values @line = line @column = column @array = [@type].concat(@values.clone.freeze).freeze freeze end def to_a @array end def inspect "#<#{self.class}(#{self.type}) #{self.values.inspect}>" end def <=>(other) case other when Token to_a <=> other.to_a when Array to_a <=> other else raise ArgumentError, "Don't know how to compare Token with #{other}" end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
salt-0.0.2 | lib/salt/scanner/token.rb |