CanvasStateAnalyser Module
Types
| Type | Description |
Functions and values
| Function or value | Description |
Full Usage:
analyseState (arg1, arg2) ldComps
Parameters:
Component list
arg1 : Connection list
ldComps : LoadedComponent list
Returns: SimulationError option * ConnectionsWidth option
|
|
Full Usage:
checkAdderUnnecessaryNC (arg1, arg2)
Parameters:
Component list
arg1 : Connection list
Returns: SimulationError option
|
|
Full Usage:
checkComponentNamesAreOk (arg1, arg2)
Parameters:
Component list
arg1 : Connection list
Returns: SimulationError option
|
|
Full Usage:
checkCustomComponentForOkIOs c args sheets
Parameters:
Component
-
The custom component instance to check
args : CustomComponentType
-
The custom component type containing parameter bindings and expected I/O labels
sheets : LoadedComponent list
-
List of loaded component sheets to check against
Returns: Result<unit, (Component * CustomComponentError)>
Ok() if the component's I/Os match the sheet definition
Error with details if there's a mismatch or missing sheet
|
The signature an instance ought to have is CanvasExtractor.signatureOfInstance: the sheet inside it, resolved at the bindings the instance gives. That is the same calculation the catalogue makes when placing an instance, the properties pane makes when a binding is edited, and CustomCompPorts makes when bringing instances back into step - one function, so those four cannot disagree about what an instance's ports are, as the copies they used to hold did. The instance's bindings are read here on their own, with no parent sheet to evaluate them in, because a canvas is checked without reference to whatever contains it. A binding that is an expression in the parent's parameters therefore cannot be worked out, and the signature comes back inexact: only the port NAMES are then compared, and the widths are left to simulation elaboration, which has the parent's bindings and is exact. Comparing widths anyway would fail a design that is perfectly correct.
|
Full Usage:
checkCustomComponentsOk (arg1, arg2) sheets
Parameters:
Component list
arg1 : Connection list
sheets : LoadedComponent list
Returns: SimulationError option
|
|
Full Usage:
getOutErrType count port rmInfo
Parameters:
int
port : Port
rmInfo : PortRmInfo
Returns: SimulationErrorType
|
|
|
|
|
|
|
|
Full Usage:
portNames componentType
Parameters:
ComponentType
Returns: string list * string list
|