Public: Stores a fragment of the manifest and the information about its location in the manifest.
Public: Returns the Integer column number of the line of the manifest text where the Token can be found.
Public: Gets/sets the next code token (skips whitespace, comments, etc) in the manifest.
Public: Initialise a new Token object.
type - An upper case Symbol describing the type of Token. value - The String value of the Token. line - The Integer line number where the Token can be found in the
manifest.
column - The Integer number of characters from the start of the line to
the start of the Token.
Returns the instantiated Token.
# File lib/puppet-lint/lexer/token.rb, line 44 def initialize(type, value, line, column) @value = value @type = type @line = line @column = column @next_token = nil @prev_token = nil @next_code_token = nil @prev_code_token = nil end
Public: Produce a Puppet DSL representation of a Token.
Returns a Puppet DSL String.
# File lib/puppet-lint/lexer/token.rb, line 66 def to_manifest case @type when :STRING "\"#{@value}\"" when :SSTRING "'#{@value}'" when :DQPRE "\"#{@value}" when :DQPOST "#{@value}\"" when :VARIABLE if !@prev_code_token.nil? && [:DQPRE, :DQMID].include?(@prev_code_token.type) "${#{@value}}" else "$#{@value}" end when :UNENC_VARIABLE "$#{@value}" when :NEWLINE "\n" when :COMMENT "##{@value}" when :REGEX "/#{@value}/" else @value end end
Generated with the Darkfish Rdoc Generator 2.