Class: MetaCommit::Factories::ContextualAstNodeFactory

Inherits:
Object
  • Object
show all
Defined in:
lib/meta_commit/factories/contextual_ast_node_factory.rb

Overview

Factory that builds ContextualAstNode from ast nodes

Instance Method Summary collapse

Instance Method Details

#create_ast_path(source_ast, line_number) ⇒ MetaCommit::Models::ContextualAstNode

Parameters:

  • source_ast (MetaCommit::Contracts::Ast)
  • line_number (Integer)

Returns:



8
9
10
11
12
13
14
15
# File 'lib/meta_commit/factories/contextual_ast_node_factory.rb', line 8

def create_ast_path(source_ast, line_number)
  visited_nodes = []
  ast_path = MetaCommit::Models::ContextualAstNode.new
  ast_path.parser_class = source_ast.parser_class
  ast_path.target_node = collect_path_to_ast_at_line(source_ast, line_number, visited_nodes)
  ast_path.context_nodes = visited_nodes
  ast_path
end