removed ... ModuleItem::Calculator since why does it even exist
parent
65da24b558
commit
d130863a46
2 changed files with 4 additions and 20 deletions
|
|
@ -16,14 +16,6 @@ validators take one [object instance](object.md#instances), and output a `Result
|
||||||
|
|
||||||
for referencing validators, the following syntax is used: `{object_type}:func:validator`
|
for referencing validators, the following syntax is used: `{object_type}:func:validator`
|
||||||
|
|
||||||
## `... ModuleItem::Calculator`
|
|
||||||
|
|
||||||
calculators take one [object instance](object.md#instances), and output one object instance, which *should* be of the same `object_type`.
|
|
||||||
|
|
||||||
calculators are used by wgu to modify an object instance, most often by populating properties under `local` and `remote`.
|
|
||||||
|
|
||||||
for referencing calculators, the following syntax is used: `{object_type}:func:{name}`
|
|
||||||
|
|
||||||
## `... ModuleItem::Function`
|
## `... ModuleItem::Function`
|
||||||
|
|
||||||
functions take hashmaps of named object instances as inputs (and parameters), and output another hashmap of named object instances.
|
functions take hashmaps of named object instances as inputs (and parameters), and output another hashmap of named object instances.
|
||||||
|
|
|
||||||
16
object.md
16
object.md
|
|
@ -6,9 +6,7 @@ core object data is categorized into three categories, `input`, `local`, and `re
|
||||||
|
|
||||||
the keys in object instances are generally referred to as **properties**.
|
the keys in object instances are generally referred to as **properties**.
|
||||||
|
|
||||||
> a **big** pitfall early on is confusing the properties `variant` with `input.variant`
|
> **a big pitfall early on is confusing the properties `variant` with `input.variant`.** `variant` is for differentiating between multiple object instances with the same `input_sha256`, while `input.variant` is most often used for defining multiple structures inside one object, when it can represent multiple things (the best example of that is `meta/connection`)
|
||||||
>
|
|
||||||
> `variant` is for differentiating between multiple object instances with the same `input_sha256`, while `input.variant` is most often used for defining multiple structures inside one object, when it can represent multiple things (the best example of that is `meta/connection`)
|
|
||||||
|
|
||||||
for referencing object instances, the properties `input_sha256` and `variant` are used, separated by a `+` (plus) symbol. to refer to a property within an object:
|
for referencing object instances, the properties `input_sha256` and `variant` are used, separated by a `+` (plus) symbol. to refer to a property within an object:
|
||||||
|
|
||||||
|
|
@ -45,8 +43,6 @@ below are the columns of the table `objects` in wgu's sqlite database. these cat
|
||||||
|
|
||||||
### timestamps
|
### timestamps
|
||||||
|
|
||||||
> **under construction**
|
|
||||||
>
|
|
||||||
> **this section needs more expansion!** you can contribute by documenting how this feature or module operates in the latest available version (also check for pull requests that would change that)
|
> **this section needs more expansion!** you can contribute by documenting how this feature or module operates in the latest available version (also check for pull requests that would change that)
|
||||||
|
|
||||||
| property | transforms | subobjects | conditions | duplicates | value |
|
| property | transforms | subobjects | conditions | duplicates | value |
|
||||||
|
|
@ -72,8 +68,6 @@ below are the columns of the table `objects` in wgu's sqlite database. these cat
|
||||||
|
|
||||||
### logs
|
### logs
|
||||||
|
|
||||||
> **under construction**
|
|
||||||
>
|
|
||||||
> **this section needs more expansion!** you can contribute by documenting how this feature or module operates in the latest available version (also check for pull requests that would change that)
|
> **this section needs more expansion!** you can contribute by documenting how this feature or module operates in the latest available version (also check for pull requests that would change that)
|
||||||
|
|
||||||
| property | transforms | subobjects | conditions | duplicates | value |
|
| property | transforms | subobjects | conditions | duplicates | value |
|
||||||
|
|
@ -105,8 +99,6 @@ objects can have parent-child relationships with other objects as defined in the
|
||||||
- `social/discord.message` is a subobject of `social/discord.channel` and `social/discord.thread`
|
- `social/discord.message` is a subobject of `social/discord.channel` and `social/discord.thread`
|
||||||
- `web/github.repository` is a subobject of `web/github.user` and `web/github.organization`
|
- `web/github.repository` is a subobject of `web/github.user` and `web/github.organization`
|
||||||
|
|
||||||
subobjects are not object instances nested within each other! it's simply a parent-child relationship between two first-class sovereign objects
|
|
||||||
|
|
||||||
similarly to [transforms](#transforms), subobjects are defined in the [template of the parent object](#subobjects-1), along with the shared property (most commonly an identifier). this shared property must have the same [outgoing transforms](#transforms-1) in both the child and parent object.
|
similarly to [transforms](#transforms), subobjects are defined in the [template of the parent object](#subobjects-1), along with the shared property (most commonly an identifier). this shared property must have the same [outgoing transforms](#transforms-1) in both the child and parent object.
|
||||||
|
|
||||||
## templates
|
## templates
|
||||||
|
|
@ -139,13 +131,13 @@ which then looks like this in the documentation:
|
||||||
|
|
||||||
> see also: [transforms](#transforms) in general
|
> see also: [transforms](#transforms) in general
|
||||||
|
|
||||||
array of template types and their properties under `input` that this property transforms to, separated by a `:` (colon) symbol
|
array of object types and their properties under `input` that this property transforms to, separated by a `:` (colon) symbol
|
||||||
|
|
||||||
### `subobjects`
|
### `subobjects`
|
||||||
|
|
||||||
> see also: [subobjects](#subobjects) in general
|
> see also: [subobjects](#subobjects) in general
|
||||||
|
|
||||||
array of templates and their properties under `input` that this property matches the [outgoing transforms](#transforms-1) of
|
array of objects and their properties under `input` that this property matches the [outgoing transforms](#transforms-1) of, separated by a `:` (colon) symbol
|
||||||
|
|
||||||
### `conditions`
|
### `conditions`
|
||||||
|
|
||||||
|
|
@ -175,4 +167,4 @@ conditions = [
|
||||||
|
|
||||||
boolean indicating if this property can be duplicated.
|
boolean indicating if this property can be duplicated.
|
||||||
|
|
||||||
if `true`, it will use an array when represented in json. it can only contain properties specified in `transforms`. when used as transform destinations, duplicable properties add the source property's value to the first (0th) position, and the remaining positions can be filled later by [calculators](modularity.md#calculator).
|
if `true`, the property will be an array when represented in json. this array can contain properties specified in `transforms`. when used as transform destinations, duplicable properties add the source property's value to the first (0th) position, and the remaining positions can be filled later by [calculators](modularity.md#calculator).
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue