


## type-type.api -- typecheck a type.
# Compiled by:
# src/lib/compiler/front/typer/typer.sublib### "The perplexing subject of polymorphism."
###
### -- Charles Darwin
### Life & Letters, 1887
stipulate
package ds = deep_syntax; # deep_syntax is from src/lib/compiler/front/typer-stuff/deep-syntax/deep-syntax.pkg package err = error_message; # error_message is from src/lib/compiler/front/basics/errormsg/error-message.pkg package ip = inverse_path; # inverse_path is from src/lib/compiler/front/typer-stuff/basics/symbol-path.pkg package lnd = line_number_db; # line_number_db is from src/lib/compiler/front/basics/source/line-number-db.pkg package raw = raw_syntax; # raw_syntax is from src/lib/compiler/front/parser/raw-syntax/raw-syntax.pkg package syx = symbolmapstack; # symbolmapstack is from src/lib/compiler/front/typer-stuff/symbolmapstack/symbolmapstack.pkg package trs = typer_junk; # typer_junk is from src/lib/compiler/front/typer/main/typer-junk.pkg package tvs = type_variable_set; # type_variable_set is from src/lib/compiler/front/typer/main/type-variable-set.pkg package ty = types; # types is from src/lib/compiler/front/typer-stuff/types/types.pkg package xtc = expand_typ; # expand_typ is from src/lib/compiler/front/typer/modules/expand-typ.pkg# package vac = variables_and_constructors; # variables_and_constructors is from src/lib/compiler/front/typer-stuff/deep-syntax/variables-and-constructors.pkgherein
api Type_Type {
type_type: ( raw::Any_Type,
syx::Symbolmapstack,
err::Error_Function,
lnd::Source_Code_Region
)
->
( ty::Type,
tvs::Type_Variable_Set
);
type_typevar_list: ( List( raw::Type_Variable ),
err::Error_Function,
lnd::Source_Code_Region
)
->
List( ty::Typevar_Ref );
type_type_declaration: ( List( raw::Named_Type ),
syx::Symbolmapstack,
ip::Inverse_Path,
lnd::Source_Code_Region,
trs::Per_Compile_Info
)
->
( ds::Declaration,
syx::Symbolmapstack
);
type_datatype_declaration: ( { datatyps: List( raw::Named_Datatype ),
with_typs: List( raw::Named_Type )
},
syx::Symbolmapstack,
xtc::Api_Context,
typerstore::Typerstore,
(ty::Typ -> Bool),
ip::Inverse_Path,
lnd::Source_Code_Region,
trs::Per_Compile_Info
)
->
( List( ty::Typ ),
List( ty::Typ ),
List( ty::Valcon ),
syx::Symbolmapstack
);
debugging: Ref( Bool );
}; # Api Type_Type
end;
## COPYRIGHT (c) 1998 Bell Laboratories
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2013,
## released per terms of SMLNJ-COPYRIGHT.


