Skip to main content

Crate celox_frontend_sdk

Crate celox_frontend_sdk 

Source
Expand description

Stable, source-language-independent authoring API for Celox frontends.

This crate deliberately does not depend on Celox compiler internals. A frontend parses and elaborates its input, constructs a FrontendArtifact, and hands that artifact to the public celox compiler API.

Structs§

Assignment
One continuous/combinational assignment.
AsyncReset
Optional asynchronous reset configuration for a storage element.
Constant
Constant payload and four-state mask. Set mask bits represent X/Z.
Enable
Optional synchronous enable configuration for a storage element.
ExprId
Identity of one expression in the elaborated module.
Expression
Typed expression entry.
FrontendArtifact
Fully elaborated frontend result. The first SDK version intentionally models one flattened module; hierarchical netlists can be flattened by the producing frontend without affecting runtime signal names.
ModuleBuilder
Builder for one flattened, elaborated netlist module.
Register
One edge-triggered storage element in an elaborated netlist.
Signal
One declared signal retained for runtime reflection and TypeScript access.
SignalId
Identity of one signal in the elaborated module.
SignalSlice
A fixed bit range of a signal.
ValueType
Source-independent bit-vector type.

Enums§

ActiveLevel
Active level of a reset or enable signal.
ArtifactJsonError
JSON interchange failures for frontend artifacts.
BinaryOp
Binary operation in the frontend expression vocabulary.
BuildError
Errors detected while constructing a frontend artifact.
Direction
Public direction of a signal.
Edge
Edge polarity used by clocked storage.
ExprNode
One expression node. Node result types are explicit so a netlist frontend does not inherit source-language width inference rules from Celox.
UnaryOp
Unary operation in the frontend expression vocabulary.

Constants§

ARTIFACT_FORMAT_VERSION
Current JSON interchange version of FrontendArtifact.