Class: CodeLexer::StringAbstractor

Inherits:
AbstractorPiece show all
Defined in:
lib/code-lexer/abstractor.rb

Instance Method Summary collapse

Methods inherited from AbstractorPiece

#initialize

Constructor Details

This class inherits a constructor from CodeLexer::AbstractorPiece

Instance Method Details

#abstract(tokens) ⇒ Object



173
174
175
176
177
178
179
180
# File 'lib/code-lexer/abstractor.rb', line 173

def abstract(tokens)
    tokens.select { |t| t.type == :string }.each do |string_token|
        string_token.abstracted_value = Token.special("STRING")
        @abstractor.strings_dictionary << string_token.value
    end
    
    return tokens
end

#deabstract(tokens) ⇒ Object



182
183
184
185
186
187
188
189
190
191
192
# File 'lib/code-lexer/abstractor.rb', line 182

def deabstract(tokens)
    id = 0
    tokens.select { |t| t.abstracted_value == Token.special("STRING") }.each do |token|
        token.type = :string
        token.value = '"' + @abstractor.strings_dictionary[id] + '"'
        
        id += 1
    end
    
    return tokens
end