class Savi::Compiler::Context

Defined in:

savi/compiler/context.cr

Constructors

Instance Method Summary

Constructor Detail

def self.new(compiler : Savi::Compiler, options : Savi::Compiler::Options = Compiler::Options.new, prev_ctx : Nil | Savi::Compiler::Context = nil) #

[View source]

Instance Method Detail


[View source]
def code_gen : CodeGen #

[View source]
def code_gen_verona : CodeGen #

[View source]
def compile_bootstrap_package(path, name) : Program::Package #

[View source]
def compile_manifests_at_path(path) #

[View source]
def compile_package(manifest : Packaging::Manifest) #

[View source]
def compile_package(*args) #

[View source]
def compile_package_docs(package : Program::Package, docs : Array(AST::Document)) #

[View source]
def compile_package_inner(source_package : Source::Package, docs : Array(AST::Document)) #

[View source]
def compiler : Compiler #

[View source]

[View source]
def error_at(*args) #

[View source]
def errors : Array(Savi::Error) #

[View source]
def finish #

[View source]

[View source]

[View source]

[View source]

[View source]

[View source]
def lifetime : Savi::Compiler::Lifetime #

[View source]
def link_c_files : Set(String) #

[View source]
def link_cpp_files : Set(String) #

[View source]
def link_libraries : Hash(String, Symbol) #

[View source]
def link_libraries_by_foreign_function : Hash(String, String) #

[View source]
def load : Savi::Compiler::Load #

[View source]

[View source]
def manifests : Savi::Compiler::Manifests #

[View source]
def namespace : Savi::Compiler::Namespace #

[View source]
def options : Compiler::Options #

[View source]
def paint : Savi::Compiler::Paint #

[View source]
def populate : Savi::Compiler::Populate #

[View source]
def populate_types : Savi::Compiler::PopulateTypes #

[View source]

[View source]

[View source]

[View source]
def prev_ctx : Context | Nil #

[View source]
def prev_ctx=(prev_ctx : Context | Nil) #

[View source]

[View source]
def program : Savi::Program #

[View source]
def reach : Savi::Compiler::Reach #

[View source]

[View source]

[View source]
def root_docs : Array(AST::Document) #

def root_docs=(root_docs : Array(AST::Document)) #

[View source]
def root_docs? : Array(AST::Document) | Nil #

def root_package #

[View source]
def root_package_link #

[View source]
def run(obj) #

[View source]

[View source]
def run_copy_on_mutate(obj) #

[View source]
def run_whole_program(obj) #

[View source]
def serve_definition : Savi::Compiler::ServeDefinition #

[View source]
def serve_hover : Savi::Compiler::ServeHover #

[View source]

[View source]

[View source]
def t_infer_edge : Savi::Compiler::TInfer::PassEdge #

[View source]

[View source]
def t_type_check : Savi::Compiler::TTypeCheck #

[View source]
def type_check : Savi::Compiler::TypeCheck #

[View source]

[View source]

[View source]

[View source]

[View source]

[View source]

[View source]