You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
usingnamespacehttps://x/y/z # is valid syntax# so is:
using namespace @'ghcr.io/startautomating/pipescript'@# so is:usingnamespaceanynamespacethatdoesnotexist# orusingnamespacelanguage.javascript
By using syntax like this, we can describe as dynamic of a namespace as we'd like.
Additionally, since dynamic namespaces are simply dynamic objects, they can dynamically describe a "use"
For example, we could "use" a container registry as a base image to run code in a container.
We could also simply "use" any language object to attempt to run or translate the script (that would be up to each language to decide).
Architecture
Using one or more dynamic namespaces should be fairly straightforward.
Let us imagine our using namespace statements, and the namespace keyword, as a stack of namespaces.
If any of the stack items are defined and have a .Use method, that will be called with the ScriptBlock as input.
Any output will be passed to the next defined .Use for a namespace.
If the output from the entire chain is a [ScriptBlock], and the file is a template, it will be the output of the template.
Using Languages
Since anything can become a namespace, all languages will be considered namespaces.
Thus, if a language defines a .Use, and it is in the stack, it will be used.
Using Protocols
Since anything can become a namespace, all protocols will be considered namespaces.
Thus, if a protocol defines a .Use, and it is in the stack, it will be used.
The text was updated successfully, but these errors were encountered:
Useful syntax
By using syntax like this, we can describe as dynamic of a namespace as we'd like.
Additionally, since dynamic namespaces are simply dynamic objects, they can dynamically describe a "use"
For example, we could "use" a container registry as a base image to run code in a container.
We could also simply "use" any language object to attempt to run or translate the script (that would be up to each language to decide).
Architecture
Using one or more dynamic namespaces should be fairly straightforward.
Let us imagine our
using namespace
statements, and the namespace keyword, as a stack of namespaces.If any of the stack items are defined and have a
.Use
method, that will be called with the ScriptBlock as input.Any output will be passed to the next defined
.Use
for a namespace.If the output from the entire chain is a
[ScriptBlock]
, and the file is a template, it will be the output of the template.Using Languages
Since anything can become a namespace, all languages will be considered namespaces.
Thus, if a language defines a .Use, and it is in the stack, it will be used.
Using Protocols
Since anything can become a namespace, all protocols will be considered namespaces.
Thus, if a protocol defines a .Use, and it is in the stack, it will be used.
The text was updated successfully, but these errors were encountered: