package lambdapi
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=d01e5f13db2eaba6e4fe330667149e0059d4886c651ff9d6b672db2dfc9765ed
sha512=33b68c972aca37985ed73c527076198e7d4961c7e27c89cdabfe4d1cff97cd41ccfb85ae9499eb98ad9a0aefd920bc55555df6393fc441ac2429e4d99cddafa8
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.