class AbstractSyntaxTree

Holds all logic for creating the AST, including parsing.

Attributes

base_tokens[R]

Public Class Methods

new(base_tokens) click to toggle source
# File lib/rosetta/abstract_syntax_tree.rb, line 9
def initialize(base_tokens)
  @base_tokens = base_tokens
end

Public Instance Methods

formatted_token_tree() click to toggle source
# File lib/rosetta/abstract_syntax_tree.rb, line 17
def formatted_token_tree
  token_tree.map(&:to_s)
end
node_representation() click to toggle source
# File lib/rosetta/abstract_syntax_tree.rb, line 21
def node_representation
  token_tree.map(&:node_representation)
end
raw_tokens() click to toggle source
# File lib/rosetta/abstract_syntax_tree.rb, line 25
def raw_tokens
  @base_tokens.map(&:to_s)
end
token_tree() click to toggle source
# File lib/rosetta/abstract_syntax_tree.rb, line 13
def token_tree
  @token_tree ||= TreeParser.call(@base_tokens)
end