package wax-lib
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=4361e1324b7754a4c08ab5b505df32061f3ce0cea60443fd0d3699e0fa796b32
sha512=fcc756d2f160ba90a9aa1131f2ab22ed7f45466ccd658c21cf9df6868a6aab0cee7f404719d698a379958802f9820398f2fe0685ecc4dda018ca4f653294e39b
doc/wax-lib.utils/Wax_utils/Feature/index.html
Module Wax_utils.FeatureSource
Optional language features / WebAssembly proposals.
A feature is enabled or disabled (per its default, overridden on the command line). Validation queries is_enabled / require to accept or reject a construct, and mark_used / used track which features a module actually exercises.
Whether the feature is on when it is not mentioned on the command line.
A resolved configuration: which features are enabled, together with a mutable record of which have been used. Create one per module (usage is per-module).
configure specs takes each feature's default and applies specs over it (later entries win).
Install a process-wide default configuration (like the warning policy), read by default. Intended to be called once, from the command line.
A fresh set using the configuration installed by set_config (the built-in defaults if none), nothing used yet.
Whether the configuration set was built from explicitly disables t (an -X name=off spec), as opposed to t merely being off by default. A module declaring t against such a configuration is a conflict.
Enable t in set: the module declares (with a #![feature = "…"] attribute or (@feature "…") annotation) that it uses t. Check explicitly_disabled first to report a conflict with the command line.
Record that t is used (whether or not it is enabled). Idempotent.