Class: Evilution::AST::ConstantNames
- Inherits:
-
Object
- Object
- Evilution::AST::ConstantNames
- Defined in:
- lib/evilution/ast/constant_names.rb
Overview
Walks a Prism AST and returns every class/module constant declared, nested names rendered fully-qualified (e.g. “Foo::Bar”). Order is source order: outer declarations precede their nested children.
Instance Method Summary collapse
Instance Method Details
#call(source) ⇒ Object
10 11 12 13 14 15 |
# File 'lib/evilution/ast/constant_names.rb', line 10 def call(source) result = Prism.parse(source) return [] if result.failure? collect(result.value) end |