struct Savi::Compiler::TInfer::ReifiedType
- Savi::Compiler::TInfer::ReifiedType
- Struct
- Value
- Object
Defined in:
savi/compiler/t_infer/reified.crConstructors
Instance Method Summary
- #args : Array(MetaType)
- #defn(ctx)
- #has_params?(ctx)
-
#inspect(io : IO)
Appends this struct's name and instance variables names and values to the given IO.
- #is_before_reify?(ctx)
- #is_complete?(ctx)
- #link : Program::Type::Link
- #meta_type_of(ctx : Context, ast : AST::Node, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
- #meta_type_of(ctx : Context, span : Span | Nil, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
- #meta_type_of(ctx : Context, info : Info, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
- #meta_type_of_type_param_bound(ctx : Context, index : Int, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
- #meta_type_of_type_param_default(ctx : Context, index : Int, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
- #params_count(ctx)
- #show_type(io : IO)
- #show_type
- #with_additional_arg(arg : MetaType)
Constructor Detail
def self.new(link : Savi::Program::Type::Link, args : Array(Savi::Compiler::TInfer::MetaType) = [] of MetaType)
#
Instance Method Detail
def inspect(io : IO)
#
Description copied from struct Struct
Appends this struct's name and instance variables names and values to the given IO.
struct Point
def initialize(@x : Int32, @y : Int32)
end
end
p1 = Point.new 1, 2
p1.to_s # "Point(@x=1, @y=2)"
p1.inspect # "Point(@x=1, @y=2)"
def meta_type_of(ctx : Context, ast : AST::Node, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
#
def meta_type_of(ctx : Context, span : Span | Nil, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
#
def meta_type_of(ctx : Context, info : Info, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
#
def meta_type_of_type_param_bound(ctx : Context, index : Int, infer : Analysis = ctx.t_infer[@link]) : MetaType | Nil
#