Nokome Bentley3 min read

If Block Clause

A clause within an `IfBlock` node.

This type is marked as unstable and is subject to change.

Properties

The IfBlockClause type has these properties:

Name Description Type Inherited from JSON-LD @id Aliases
id The identifier for this item. String Entity schema:id -
executionMode Under which circumstances the node should be executed. ExecutionMode Executable stencila:executionMode execution-mode, execution_mode
compilationDigest A digest of the content, semantics and dependencies of the node. CompilationDigest Executable stencila:compilationDigest compilation-digest, compilation_digest
compilationMessages Messages generated while compiling the code. CompilationMessage* Executable stencila:compilationMessages compilation-messages, compilation_messages, compilationMessage, compilation-message, compilation_message
executionDigest The compilationDigest of the node when it was last executed. CompilationDigest Executable stencila:executionDigest execution-digest, execution_digest
executionDependencies The upstream dependencies of this node. ExecutionDependency* Executable stencila:executionDependencies execution-dependencies, execution_dependencies, executionDependency, execution-dependency, execution_dependency
executionDependants The downstream dependants of this node. ExecutionDependant* Executable stencila:executionDependants execution-dependants, execution_dependants, executionDependant, execution-dependant, execution_dependant
executionTags Tags in the code which affect its execution. ExecutionTag* Executable stencila:executionTags execution-tags, execution_tags, executionTag, execution-tag, execution_tag
executionCount A count of the number of times that the node has been executed. Integer Executable stencila:executionCount execution-count, execution_count
executionRequired Whether, and why, the code requires execution or re-execution. ExecutionRequired Executable stencila:executionRequired execution-required, execution_required
executionStatus Status of the most recent, including any current, execution. ExecutionStatus Executable stencila:executionStatus execution-status, execution_status
executionInstance The id of the kernel instance that performed the last execution. String Executable stencila:executionInstance execution-instance, execution_instance
executionEnded The timestamp when the last execution ended. Timestamp Executable stencila:executionEnded execution-ended, execution_ended
executionDuration Duration of the last execution. Duration Executable stencila:executionDuration execution-duration, execution_duration
executionMessages Messages emitted while executing the node. ExecutionMessage* Executable stencila:executionMessages execution-messages, execution_messages, executionMessage, execution-message, execution_message
code The code. Cord CodeExecutable stencila:code -
programmingLanguage The programming language of the code. String CodeExecutable schema:programmingLanguage programming-language, programming_language
executionBounds The environment in which code should be executed. ExecutionBounds CodeExecutable stencila:executionBounds execution-bounds, execution_bounds
executionBounded The execution bounds, if any, on the last execution. ExecutionBounds CodeExecutable stencila:executionBounded execution-bounded, execution_bounded
authors The authors of the executable code. Author* CodeExecutable schema:author author
provenance A summary of the provenance of the code. ProvenanceCount* CodeExecutable stencila:provenance -
isActive Whether this clause is the active clause in the parent IfBlock node Boolean - stencila:isActive is-active, is_active
content The content to render if the result is truthy Block* - stencila:content -

Related

The IfBlockClause type is related to these types:

Formats

The IfBlockClause type can be encoded (serialized) to, and/or decoded (deserialized) from, these formats:

Format Encoding Decoding Support Notes
DOM HTML 🟢 No loss
HTML 🔷 Low loss
JATS
Markdown ⚠️ High loss Encoded using implemented function
Stencila Markdown ⚠️ High loss
Quarto Markdown ⚠️ High loss
MyST Markdown ⚠️ High loss
LLM Markdown ⚠️ High loss
LaTeX 🔷 Low loss 🔷 Low loss
PDF 🔷 Low loss
Plain text ⚠️ High loss
IPYNB 🔷 Low loss 🔷 Low loss
Microsoft Word DOCX 🔷 Low loss 🔷 Low loss
OpenDocument ODT 🔷 Low loss 🔷 Low loss
TeX 🔷 Low loss 🔷 Low loss
JSON 🟢 No loss 🟢 No loss
JSON+Zip 🟢 No loss 🟢 No loss
JSON5 🟢 No loss 🟢 No loss
JSON-LD 🟢 No loss 🟢 No loss
CBOR 🟢 No loss 🟢 No loss
CBOR+Zstandard 🟢 No loss 🟢 No loss
YAML 🟢 No loss 🟢 No loss
Lexical JSON 🔷 Low loss 🔷 Low loss
Koenig JSON 🔷 Low loss 🔷 Low loss
Pandoc AST 🔷 Low loss 🔷 Low loss
Directory
Stencila Web Bundle
Debug 🔷 Low loss

Bindings

The IfBlockClause type is represented in:

Testing

During property-based (a.k.a generative) testing, the properties of the IfBlockClause type are generated using the following strategies for each complexity level. Any optional properties that are not in this table are set to None.

Property Complexity Description Strategy
code Min+ Generate a simple fixed string of code. Cord::from("code")
Low+ Generate a random string of up to 10 alphanumeric characters (excludes whitespace whichcan be problematic in Markdown). r"[a-zA-Z0-9]{1,10}".prop_map(Cord::from)
High+ Generate a random string of up to 100 characters (excluding control characters). r"[^\p{C}]{1,100}".prop_map(Cord::from)
Max Generate an arbitrary string. String::arbitrary().prop_map(Cord::from)
programmingLanguage Min+ Generate a simple fixed string. Some(String::from("lang"))
Low+ Generate one of the well known programming language short names. option::of(r"(cpp)|(js)|(py)|(r)|(ts)")
High+ Generate a random string of up to 10 alphanumeric characters. option::of(r"[a-zA-Z0-9]{1,10}")
Max Generate an arbitrary string. option::of(String::arbitrary())
content Min+ A single, simple paragraph. vec![p([t("If clause content")])]
Low+ Generate up to two arbitrary, non-recursive, block nodes. vec_blocks_non_recursive(2)
Max Generate up to four arbitrary, non-recursive, block nodes. vec_blocks_non_recursive(4)

Source

This documentation was generated from IfBlockClause.yaml by docs_types.rs.