Data types
A list of data types you can use with the Packhunt Workbench.
Blocks can store, use and transfer data. The data value can be of various types includingNumber, String, Boolean, List and Dictionary. When defining, receiving and sending data, the underlying data type must match for successful results.
See the table below for explanation on valid data types.
| Data type | Definition | Example |
|---|---|---|
| Number | Quantitative values which can be negative or positive and integers or floats. Empty value is null. |
1000 -1000 50.5 |
| String | Combination of characters, digits, or symbols, always treated as text. Empty value is “” or null. |
“abc" ”a123” ”5” |
| Boolean | True or false values, which can be represented by 1s and 0s. Empty value is null. |
true (1) false(0) |
| List | List of values that all have the same type. Empty value is [] or null. |
See the examples below. |
| Dictionary | Collection of items in key-value pairs. Empty value is {} or null. |
See the examples below. |
Lists are configured like the example below.
key1: [value1, value2]
# or
key1:
- value1
- value2
# or
- key1: value1
key2: value2
- key1: value1
key2: value2
See the configuration example for Packhunt configuration language below.
areas: #list
[block1, block2]
# or
areas: #list
- block1
- block2
# or
subscribe: #list
- kind: ControlPanel
frame: my-frame
source: my-controlpanel
- kind: EntityDataStore
frame: my-frame
source: my-entity-data-store
Dictionaries are configured like the examples below.
key1: value1
key2: value2
# or
key:
key1: value1
key2: value2
See the configuration examples for Packhunt configuration language below.
assignMaterials: #dictionary
box-geometry: blue-material
sphere-geometry: red-material
.....
properties: #dictionary
height:
type: Number
default: null
nullable: true
width:
type: Number
default: null
nullable: true
Undefined and empty values
| Value | Definition |
|---|---|
undefined |
The value of the property isn’t set yet. The desired action (e.g. Model solve or Insert entity) may not take place as a consequence. It’s not possible for a user to set a value to undefined. |
null |
The value of the property is (intentionally) assigned no value. Is only a valid value depending on the property settings. Can be set by the user. |
"" |
The value of the property is of type String with zero characters. Can be set by the user. |
[] |
The value of the property is of type List with zero items. Can be set by the user. |
{} |
The value of the property is of type Dictionary with zero key-value pairs. Can be set by the user. |