class StateMachine::YARD::Handlers::Base
Handles and processes nodes
Private Instance Methods
extract_node_name(ast)
click to toggle source
Extracts the value from the node as either a string or symbol
# File lib/state_machines/yard/handlers/base.rb, line 10 def extract_node_name(ast) case ast.type when :symbol_literal ast.jump(:ident).source.to_sym when :string_literal ast.jump(:tstring_content).source else nil end end
extract_node_names(ast, convert_to_array = true)
click to toggle source
Extracts the values from the node as either strings or symbols. If the node isn't an array, it'll be converted to an array.
# File lib/state_machines/yard/handlers/base.rb, line 23 def extract_node_names(ast, convert_to_array = true) if [nil, :array].include?(ast.type) ast.children.map { |child| extract_node_name(child) } else node_name = extract_node_name(ast) convert_to_array ? [node_name] : node_name end end