class Savi::Compiler::TInfer::FixedTypeExpr

Defined in:

savi/compiler/t_infer/info.cr

Constructors

Instance Method Summary

Instance methods inherited from class Savi::Compiler::TInfer::FixedInfo

tether_resolve_span(ctx : Context, infer : Visitor) tether_resolve_span, tether_terminal? tether_terminal?

Instance methods inherited from class Savi::Compiler::TInfer::DynamicInfo

add_downstream(use_pos : Source::Pos, info : Info) add_downstream, adds_alias adds_alias, after_add_downstream(use_pos : Source::Pos, info : Info) after_add_downstream, describe_downstream_constraints(ctx : Context, type_check : TTypeCheck::ForReifiedFunc) describe_downstream_constraints, describe_kind : String describe_kind, described_kind described_kind, downstream_tethers(querent : Info) : Array(Tether) downstream_tethers, downstream_use_pos downstream_use_pos, downstreams_each downstreams_each, downstreams_empty? downstreams_empty?, list_downstream_constraints(ctx : Context, type_check : TTypeCheck::ForReifiedFunc) list_downstream_constraints, tether_constraint_spans(ctx : Context, infer : Visitor) tether_constraint_spans, tethers(querent : Info) : Array(Tether) tethers, this_would_be_possible_if : Tuple(Source::Pos, String) | Nil this_would_be_possible_if, this_would_be_possible_if=(this_would_be_possible_if : Tuple(Source::Pos, String) | Nil) this_would_be_possible_if=, total_downstream_constraint(ctx : Context, type_check : TTypeCheck::ForReifiedFunc) total_downstream_constraint

Instance methods inherited from class Savi::Compiler::TInfer::Info

add_downstream(use_pos : Source::Pos, info : Info) add_downstream, add_peer_hint(peer : Info) add_peer_hint, as_conduit? : Conduit | Nil as_conduit?, as_downstream_constraint_meta_type(ctx : Context, type_check : TTypeCheck::ForReifiedFunc) : MetaType | Nil as_downstream_constraint_meta_type, as_multiple_downstream_constraints(ctx : Context, type_check : TTypeCheck::ForReifiedFunc) : Array(Tuple(Source::Pos, MetaType)) | Nil as_multiple_downstream_constraints, as_upstream_conduits : Array(Conduit) as_upstream_conduits, layer_index : Int32 layer_index, layer_index=(layer_index : Int32) layer_index=, layer_index? : Int32 | Nil layer_index?, override_describe_kind : String | Nil override_describe_kind, override_describe_kind=(override_describe_kind : String | Nil) override_describe_kind=, pos : Source::Pos pos, pos=(pos : Source::Pos) pos=, resolve_span!(ctx : Context, infer : Visitor) resolve_span!, tether_resolve_span(ctx : Context, infer : Visitor) tether_resolve_span, tether_terminal? tether_terminal?, tether_upward_transform_span(ctx : Context, infer : Visitor, span : Span) : Span tether_upward_transform_span, tethers(querent : Info) : Array(Tether) tethers, to_s to_s

Constructor Detail

def self.new(pos, layer_index, node : Savi::AST::Node) #

[View source]

Instance Method Detail

def describe_kind : String #
Description copied from class Savi::Compiler::TInfer::DynamicInfo

Must be implemented by the child class as an required hook.


[View source]
def node : AST::Node #

[View source]
def resolve_span!(ctx : Context, infer : Visitor) : Span #

[View source]