Overview

This table lists all the domain classifications supported by the MUFL execution environment. These columns have these meanings:

  • _typeof - the string result of invoking the _typeof function on the value of the given domain.
  • Reduceable - the value can be subscripted, that is, invoked with a parameter.
  • Iterable - the value can be iterated over using the scan statement.
  • Ordered - the value can be used as a key into a dictionary.
Domain Description _typeof Reduceable Iterable Ordered
NIL Single value representing a NIL NIL No No Yes
TRUE Single value representing Boolean true TRUE No No Yes
INTEGER A 64-bit signed integer value INTEGER No No Yes
STRING Variable length ASCII string STRING Yes Yes Yes
BINARY A value representing a binary blob BINARY Yes Yes Yes
HASH_CODE Represents a hash code (currently 32 bytes) HASH_CODE No No Yes
SAFEREF Opaque identifier used as an internal authorization key SAFEREF No No Yes
TIME Represents date+time values TIME No No Yes
DICTIONARY Merkle dictionary name-value pairs, keys must be ordered IMMUTABLE_DICTIONARY Yes Yes Yes
BLINDED DICTIONARY A partially blinded, hash-consistent Merkle dictionary BLINDED_DICTIONARY Yes Yes Yes
FUNCTION Lambda value LAMBDA Yes No No
INTEGER SEQUENCE An iterable sequence of integer values INTEGER_SEQUENCE No Yes No
PACKET A value that represents an entire ADAPT packet DATABASE No No Yes
REFERENCE A reference to a value in a packet that enables packet mutations REFERENCE No No No
CRYPTO_ELEMENT Binary representation of cryptographically-relevant data, such as keys CRYPTO No No Yes