| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
PlutusTx.Builtins.Internal
Description
This module contains the special Haskell names that are used to map to builtin types or functions in Plutus Core.
Most users should not use this module directly, but rather use Builtins.
Please note that the documentation for each function will only include operational invariants if there are any. This documentation assumes that the type system correctly enforces and prevents any structural errors on the generated UPLC. See Note [Structural vs operational errors within builtins].
Also note that all builtin functions will fail if the CEK machine exceeds its evaluation budget. Builtin functions with dynamic costing are particularly prone to budget overruns: for example, addInteger and appendByteString differ cost based on input size, so supplying very large integers or byte strings will cause these functions to abort when the budget limit is reached and fail. See Note [Budgeting].
Synopsis
- error :: BuiltinUnit -> a
- ifThenElse :: Bool -> a -> a -> a
- data BuiltinUnit = BuiltinUnit ~()
- unitval :: BuiltinUnit
- chooseUnit :: BuiltinUnit -> a -> a
- type BuiltinInteger = Integer
- addInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- subtractInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- multiplyInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- divideInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- modInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- quotientInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- remainderInteger :: BuiltinInteger -> BuiltinInteger -> BuiltinInteger
- lessThanInteger :: BuiltinInteger -> BuiltinInteger -> Bool
- lessThanEqualsInteger :: BuiltinInteger -> BuiltinInteger -> Bool
- equalsInteger :: BuiltinInteger -> BuiltinInteger -> Bool
- data BuiltinByteString = BuiltinByteString ~TyName uni ()) #
Defined in PlutusTx.Blueprint.Definition.Unroll
Defined in PlutusTx.Builtins.HasBuiltin