class SyntaxTree::YARV::Compiler::Options
options that actually change the behavior.
passed to RubyVM::InstructionSequence.compile, except it only includes
control how it compiles the code. It mirrors the options that can be
This represents a set of options that can be passed to the compiler to
def frozen_string_literal!
def frozen_string_literal! @frozen_string_literal = true end
def frozen_string_literal?
def frozen_string_literal? @frozen_string_literal end
def initialize(
def initialize( frozen_string_literal: false, inline_const_cache: true, operands_unification: true, peephole_optimization: true, specialized_instruction: true, tailcall_optimization: false ) @frozen_string_literal = frozen_string_literal @inline_const_cache = inline_const_cache @operands_unification = operands_unification @peephole_optimization = peephole_optimization @specialized_instruction = specialized_instruction @tailcall_optimization = tailcall_optimization end
def inline_const_cache?
def inline_const_cache? @inline_const_cache end
def operands_unification?
def operands_unification? @operands_unification end
def peephole_optimization?
def peephole_optimization? @peephole_optimization end
def specialized_instruction?
def specialized_instruction? @specialized_instruction end
def tailcall_optimization?
def tailcall_optimization? @tailcall_optimization end
def to_hash
def to_hash { frozen_string_literal: @frozen_string_literal, inline_const_cache: @inline_const_cache, operands_unification: @operands_unification, peephole_optimization: @peephole_optimization, specialized_instruction: @specialized_instruction, tailcall_optimization: @tailcall_optimization } end