package lambdapi
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=9bc8ae3694dd51bd5742e7aba760bd2878c4b0e5ef9b3d4a7b06f3cd303b611d
sha512=c812c3129b3d85b0c4d7e741d11137dbb4fe2a0aaba3a5968409080b742924ecb506280c19ad83ef6bc910346db96d87780313fa7683c29345edae16ae79c704
doc/lambdapi.core/Core/Builtin/index.html
Module Core.Builtin
Source
Registering and checking builtin symbols.
get ss pos name
returns the symbol mapped to the builtin name
. If the symbol cannot be found then Fatal
is raised.
get_opt ss name
returns Some s
where s
is the symbol mapped to the builtin name
, and None
otherwise.
Hash-table used to record checking functions for builtins.
check ss pos name sym
runs the registered check for builtin symbol name
on the symbol sym
(if such a check has been registered). Note that the bmap
argument is expected to contain the builtin symbols in scope, and the pos
argument is used for error reporting.
register name check
registers the checking function check
, for the builtin symbols named name
. When the check is run, check
receives as argument a position for error reporting as well as the map of every builtin symbol in scope. It is expected to raise the Fatal
exception to signal an error. Note that this function should not be called using a name
for which a check has already been registered.
val register_expected_type :
Term.term Lplib.Base.eq ->
Term.term Lplib.Base.pp ->
string ->
(Sig_state.sig_state -> Common.Pos.popt -> Term.term) ->
unit
register_expected_type name build pp
registers a checking function that checks the type of a symbol defining the builtin name
against a type constructed using the given build
function.