Module: Jade::Frontend::ForwardDeclaration
- Extended by:
- ForwardDeclaration
- Included in:
- ForwardDeclaration
- Defined in:
- lib/jade/frontend/forward_declaration.rb,
lib/jade/frontend/forward_declaration/body.rb,
lib/jade/frontend/forward_declaration/helper.rb,
lib/jade/frontend/forward_declaration/module.rb,
lib/jade/frontend/forward_declaration/implementation.rb,
lib/jade/frontend/forward_declaration/error/bad_import.rb,
lib/jade/frontend/forward_declaration/type_declaration.rb,
lib/jade/frontend/forward_declaration/import_declaration.rb,
lib/jade/frontend/forward_declaration/struct_declaration.rb,
lib/jade/frontend/forward_declaration/error/type_not_found.rb,
lib/jade/frontend/forward_declaration/function_declaration.rb,
lib/jade/frontend/forward_declaration/interface_declaration.rb,
lib/jade/frontend/forward_declaration/error/module_not_found.rb,
lib/jade/frontend/forward_declaration/implementation_function.rb,
lib/jade/frontend/forward_declaration/error/type_not_lowerable.rb,
lib/jade/frontend/forward_declaration/error/tuple_arity_overflow.rb,
lib/jade/frontend/forward_declaration/interop_import_declaration.rb,
lib/jade/frontend/forward_declaration/error/exposed_type_not_found.rb,
lib/jade/frontend/forward_declaration/error/private_type_expansion.rb,
lib/jade/frontend/forward_declaration/error/exposed_value_not_found.rb,
lib/jade/frontend/forward_declaration/error/unknown_extends_interface.rb
Defined Under Namespace
Modules: Body, Error, FunctionDeclaration, Helper, Implementation, ImplementationFunction, ImportDeclaration, InterfaceDeclaration, InteropImportDeclaration, Module, StructDeclaration, TypeDeclaration
Classes: Result
Instance Method Summary
collapse
Instance Method Details
#declare(node, registry, entry) ⇒ Object
32
33
34
35
36
|
# File 'lib/jade/frontend/forward_declaration.rb', line 32
def declare(node, registry, entry)
shallow_declare_node(node, registry, entry)
.then { deep_declare_node(node, it.entry, registry).add_errors(it.errors) }
.to_result
end
|
#declare_entry(entry, registry) ⇒ Object
38
39
40
|
# File 'lib/jade/frontend/forward_declaration.rb', line 38
def declare_entry(entry, registry)
declare(entry.ast, registry, entry)
end
|
#deep_declare_node(node, entry, registry) ⇒ Object
47
48
49
50
|
# File 'lib/jade/frontend/forward_declaration.rb', line 47
def deep_declare_node(node, entry, registry)
resolver(node, entry)
&.deep(node, entry, registry) || Result[entry, []]
end
|
#shallow_declare_node(node, registry, entry) ⇒ Object
42
43
44
45
|
# File 'lib/jade/frontend/forward_declaration.rb', line 42
def shallow_declare_node(node, registry, entry)
resolver(node, entry)
&.shallow(node, registry, entry) || Result[entry, []]
end
|