Selection functions
cache
Commentary
added in 1.1.11
Caches the value of on to the values in to. This is a useful function for creating an immutable relationship when using forks doesn't make sense.
Beware that cache is accrete-only, so be careful not to overload memory by caching many values!
Examples
Caching a map
Set on to whatever value dictates the identity of your cache. Set to to any value that will be evaluted.
The effect is that the same on value will always produce the same to value.
{
"topic": "sandbox",
"vars": {
"i": {
"_gen": "oneOf",
"choices": [
1,
2
]
},
"cached": {
"_gen": "cache",
"on": {
"_gen": "var",
"var": "i"
},
"to": {
"x": {
"_gen": "normalDistribution",
"mean": 50,
"sd": 5
}
}
}
},
"value": {
"from": {
"_gen": "var",
"var": "i"
},
"to": {
"_gen": "var",
"var": "cached",
"path": [
"x"
]
}
}
}
[
{
"from": 2,
"to": 45.92117476009821
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 2,
"to": 45.92117476009821
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 1,
"to": 48.47137376354857
},
{
"from": 2,
"to": 45.92117476009821
}
]
Specification
JSON schema
{
"type": "object",
"properties": {
"on": {},
"to": {}
},
"required": [
"on",
"to"
]
}