SheetLayout Module
Nested modules
| Modules | Description |
Functions and values
| Function or value | Description |
Full Usage:
componentIdIn sheet compName
Parameters:
SheetDescription
compName : string
Returns: ComponentId
|
The id a component gets in the generated canvas: one more than its position in the description's component list. Deterministic, so the same description always produces the same file and fixtures can be diffed. Only per-sheet uniqueness matters at generation time - the ids are renumbered into a project's namespace when the sheet is admitted to one.
|
Full Usage:
layoutCanvas (arg1, arg2)
Parameters:
Component list
arg1 : Connection list
Returns: CanvasState
|
Lay out an existing canvas: resize every component to what the app will actually draw (createSymbolRecord, as buildComponent does), position the body by recursive bisection and pin Inputs and Outputs to edge columns in the order they appear in the component list — which therefore must be the sheet's intended port order, since a sheet's own port order is read off its I/O positions. Connections are untouched: with no vertices they are re-routed on load. Used by the Verilog compiler for its generated sheets.
|
Full Usage:
paramDefsOf sheet
Parameters:
SheetDescription
Returns: Result<ParameterDefs option, string>
|
The sheet's parameter declarations and slots, as Issie stores them. Slot expressions go through ParameterTypes.parseExpression - the same parser the properties pane uses - so an expression means here exactly what it would mean typed into a properties box. A slot naming a component that is not on the sheet, or an expression that will not parse, is an error rather than something silently dropped.
|
Full Usage:
saveLibraryComponent libPath description dependencies sheet
Parameters:
string
description : string
dependencies : SheetDescription list
sheet : SheetDescription
Returns: Result<unit, string>
|
|
Full Usage:
saveProject folder sheets
Parameters:
string
sheets : SheetDescription list
Returns: Result<unit, string>
|
Write a whole project: every sheet, plus the empty .dprj marker that makes the directory a project rather than a directory that happens to contain sheets. Issie will open a directory without one, offering to put it back, but only a marked directory is recognised as a project without being asked about.
|
Full Usage:
saveSheet folder sheet
Parameters:
string
sheet : SheetDescription
Returns: Result<unit, string>
|
|
Full Usage:
toCanvasState sheet
Parameters:
SheetDescription
Returns: Result<CanvasState, string>
|