Module: Klam::CompilationStages::ConstantizeConstructedConstants

Included in:
Klam::Compiler
Defined in:
lib/klam/compilation_stages/constantize_constructed_constants.rb

Instance Method Summary collapse

Instance Method Details

#constantize_constructed_constants(sexp) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/klam/compilation_stages/constantize_constructed_constants.rb', line 4

def constantize_constructed_constants(sexp)
  constant_bindings = []
  converted_sexp = extract_constructed_constants(sexp, constant_bindings)
  if constant_bindings.empty?
    sexp
  else
    bind_constants(converted_sexp, constant_bindings)
  end
end