Module: ASTTransform
- Defined in:
- lib/ast_transform.rb,
lib/ast_transform/node.rb,
lib/ast_transform/thunk.rb,
lib/ast_transform/layout.rb,
lib/ast_transform/version.rb,
lib/ast_transform/transformer.rb,
lib/ast_transform/source_parser.rb,
lib/ast_transform/kwargs_builder.rb,
lib/ast_transform/thunk_lowering.rb,
lib/ast_transform/transformation.rb,
lib/ast_transform/abstract_analysis.rb,
lib/ast_transform/abstract_processor.rb,
lib/ast_transform/statement_renderer.rb,
lib/ast_transform/testing/assertions.rb,
lib/ast_transform/instruction_sequence.rb,
lib/ast_transform/line_aligned_emitter.rb,
lib/ast_transform/transformation_helper.rb,
lib/ast_transform/abstract_transformation.rb,
lib/ast_transform/instruction_sequence/mixin.rb,
lib/ast_transform/instruction_sequence/mixin_utils.rb,
lib/ast_transform/instruction_sequence/bootsnap_mixin.rb
Defined Under Namespace
Modules: InstructionSequence, MixinUtils, Testing, TransformationHelper
Classes: AbstractAnalysis, AbstractProcessor, AbstractTransformation, KwargsBuilder, Layout, LineAlignedEmitter, Node, SourceParser, StatementRenderer, Thunk, ThunkLowering, Transformation, Transformer
Constant Summary
collapse
- DEFAULT_OUTPUT_PATH =
Pathname.new("").join("tmp", "ast_transform").to_s
- VERSION =
"3.1.0"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.output_path ⇒ Object
36
37
38
|
# File 'lib/ast_transform.rb', line 36
def output_path
@output_path || DEFAULT_OUTPUT_PATH
end
|
Class Method Details
.acronym(acronym) ⇒ Object
17
18
19
20
|
# File 'lib/ast_transform.rb', line 17
def acronym(acronym)
acronyms << acronym
acronyms.uniq!
end
|
.acronyms ⇒ Object
13
14
15
|
# File 'lib/ast_transform.rb', line 13
def acronyms
@acronyms ||= []
end
|
.install ⇒ Object
22
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/ast_transform.rb', line 22
def install
@installed ||= if defined?(Bootsnap) && ASTTransform::InstructionSequence.using_bootsnap_compilation?
class << Bootsnap::CompileCache::ISeq
prepend ::ASTTransform::InstructionSequence::BootsnapMixin
end
else
class << RubyVM::InstructionSequence
prepend ::ASTTransform::InstructionSequence::Mixin
end
end
end
|