16
17
18
19
20
21
22
23
24
25
|
# File 'lib/igniter/contracts/assembly/const_pack.rb', line 16
def install_into(kernel)
return kernel if kernel.nodes.registered?(:const)
kernel.nodes.register(:const, NodeType.new(kind: :const, metadata: { category: :value }))
kernel.dsl_keywords.register(:const, DslKeyword.new(:const) do |name, value, builder:|
builder.add_operation(kind: :const, name: name, value: value)
end)
kernel.runtime_handlers.register(:const, Execution::ConstRuntime.method(:handle_const))
kernel
end
|