Tokenization
Less oft-needed functions to manipulate Tokens.
Static Functions
Name | Description |
---|---|
is_resolvable |
Return whether the given object is an IResolvable object. |
resolve |
Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays. |
reverse_list |
Un-encode a Tokenized value from a list. |
reverse_number |
Un-encode a Tokenized value from a number. |
reverse_string |
Un-encode a string potentially containing encoded tokens. |
stringify_number |
Stringify a number directly or lazily if it's a Token. |
is_resolvable
import ros_cdk_core
ros_cdk_core.Tokenization.is_resolvable(
obj: typing.Any
)
Return whether the given object is an IResolvable object.
This is different from Token.isUnresolved() which will also check for encoded Tokens, whereas this method will only do a type check on the given object.
- Type: typing.Any
resolve
import ros_cdk_core
ros_cdk_core.Tokenization.resolve(
obj: typing.Any,
resolver: ITokenResolver,
scope: IConstruct,
preparing: bool = None
)
Resolves an object by evaluating all tokens and removing any undefined or empty objects or arrays.
Values can only be primitives, arrays or tokens. Other objects (i.e. with methods) will be rejected.
- Type: typing.Any
The object to resolve.
- Type: ITokenResolver
The resolver to apply to any resolvable tokens found.
- Type: IConstruct
The scope from which resolution is performed.
- Type: bool
- Default: false
Whether the resolution is being executed during the prepare phase or not.
reverse_list
import ros_cdk_core
ros_cdk_core.Tokenization.reverse_list(
l: typing.List[str]
)
Un-encode a Tokenized value from a list.
- Type: typing.List[str]
reverse_number
import ros_cdk_core
ros_cdk_core.Tokenization.reverse_number(
n: typing.Union[int, float]
)
Un-encode a Tokenized value from a number.
- Type: typing.Union[int, float]
reverse_string
import ros_cdk_core
ros_cdk_core.Tokenization.reverse_string(
s: str
)
Un-encode a string potentially containing encoded tokens.
- Type: str
stringify_number
import ros_cdk_core
ros_cdk_core.Tokenization.stringify_number(
x: typing.Union[int, float]
)
Stringify a number directly or lazily if it's a Token.
If it is an object (i.e., { Ref: 'SomeLogicalId' }), return it as-is.
- Type: typing.Union[int, float]