Cargo Features
[dependencies]
remolt = { version = "0.1.0", default-features = false, features = ["dict", "float", "i64", "error-stack-trace", "internals", "info", "expr", "closure-commands", "string-command", "unicode-case", "unicode-whitespace", "unicode-alphanum", "std"] }
- default = closure-commands, dict, error-stack-trace, expr, float, i64, info, internals, std, string-command, unicode-alphanum, unicode-case, unicode-whitespace
-
These default features are set whenever
remolt
is added without
somewhere in the dependency tree.default-features = false - dict default
-
Include the dict type and dict command for manipulating it. ~8 kiB
Affects
commands::cmd_dict
,remolt::dict
,types::MoltDict
,commands::cmd_string_map
… - float default
-
Include floating point numbers, parsing, and arithmetic. ~48 kiB
Affects
types::MoltFloat
,util::read_float
… - i64 default
-
Use 64-bit integers (when omitted, integers are 32-bit). ~3 kiB
Affects
types::MoltInt
… - error-stack-trace default
-
Collect stack trace information on errors. ~1 kiB plus burning more RAM to record the stack traces at runtime.
- internals default
-
Include "debugging tool" commands specific to Molt. ~6 kiB
Affects
parser::cmd_parse
… - info default
-
Include the info command. ~3 kiB
Affects
commands::cmd_info
,commands::cmd_info_args
,commands::cmd_info_body
,commands::cmd_info_cmdtype
,commands::cmd_info_commands
,commands::cmd_info_default
,commands::cmd_info_exists
,commands::cmd_info_complete
,commands::cmd_info_globals
,commands::cmd_info_locals
,commands::cmd_info_procs
,commands::cmd_info_vars
… - expr default
-
Include expr command and expression parsing more generally. If omitted,
commands like if and while no longer parse expressions and must instead be given explicit commands to run. Omitting this makes the language a _lot_ less useful. ~11 kiBAffects
commands::cmd_expr
… - closure-commands default
-
Allow commands to be registered as boxed closures in addition to function pointers. < 1 kiB
- string-command default
-
Include the string command. ~9 kiB, bigger when all unicode features are on.
Affects
commands::cmd_string
,commands::cmd_string_cat
,commands::cmd_string_compare
,commands::cmd_string_equal
,commands::cmd_string_first
,commands::cmd_string_last
,commands::cmd_string_length
,commands::cmd_string_range
,commands::cmd_string_tolower
,commands::cmd_string_toupper
,commands::cmd_string_trim
,util::to_uppercase
,commands::cmd_string_map
… - unicode-case default
-
Correctly handle all scripts in upper/lower case transforms and case-insensitive comparisons. ~16 kiB.
- unicode-whitespace default
-
Allow any Unicode whitespace characters to appear where space is expected during parsing and evaluation. Relatively cheap, ~1 kiB.
- unicode-alphanum default
-
Allow any Unicode alpha/numeric character to appear in identifiers and numbers. ~2.5 kiB
- std default
-
Assume the standard library is available.
Affects
commands::cmd_exit
,commands::cmd_pdump
,commands::cmd_pclear
,commands::cmd_puts
,commands::cmd_source
,commands::cmd_time
…