SCL Extensions
- SCL Factory Extensions
- SCL Create Extensions
- SCL Naming Extensions
- SCL Ordering Extensions
- SCL Statement Extensions
- SCL Thread Extensions
- SCL Goto Extensions
- SCL Expression Extensions
- SCL Dependency Extensions
- SCL Basic Block Extensions
There are several extensions implemented to ease the work with a scl model. (de.cau.cs.kieler.scl.extensions)
SCL Factory Extensions
You need several Factories to handle all aspects of Yakindu (SGraph + SText) and the extended SCChart models. The SCL Factory Extension provides you with shortcuts for all factories.
Shortcut | Factory | Description |
---|---|---|
SGraph() | SGraphFactory::eINSTANCE | Factory for yakindu statechart models |
SText() | StextFactory::eINSTANCE | Factory for yakindu expressions |
SyncGraph() | SyncgraphFactory::eINSTANCE | Factory for sgraph extensions |
SyncText() | SynctextFactory::eINSTANCE | Factory for stext extensions |
SCCExp() | SCChartsExpFactory::eINSTANCE | Factory for SCCharts specific expression extensions |
SCL() | SclFactory::eINSTANCE | Factory for SCL |
SCL Create Extensions
coming soon...
SCL Naming Extensions
coming soon...
SCL Ordering Extensions
The Ordering Extensions provide functions, which can be used in the xtend sort context.
Method | Description |
---|---|
def int compareSCLRegionStateOrder(SyncState, SyncState) | Sorts states according to their type. Initial states come first, final states last. |
SCL Statement Extensions
coming soon...
SCL Thread Extensions
The Thread Extensions provide functions to ease the handling of SCL threads and statements in the context of SCL threads.
Method | Description |
---|---|
def AbstractThread getThread(Instruction) def AbstractThread getThread(Statement) | Returns the SCL thread of a SCL statement or SCL instruction |
def AbstractThread getMainThread(Instruction) def AbstractThread getMainThread(Statement) | Returns the main thread of a SCL program |
def boolean isInSameThreadAs(Instruction, Instruction) def boolean isInSameThreadAs(Statement, Statement) | Returns true, if both instructions/statements are in the same thread |
def boolean isInMainThread(Instruction) def boolean isInMainThread(Statement) | Returns true, if the instruction/statement runs in the main thread |
def boolean isInThread(Instruction, Thread) def boolean isInThread(Statement, Thread) | Returns true, if the instruction/statement runs in the given thread |
def boolean contains(Thread, Instruction) def boolean contains(Thread, Statements) | Returns true, if the thread contains the given instruction/statement |
def dropPrevious(Thread, Statement) def dropPrevious(List<Statement>, Statement) | Drops all preceeding statements in a thread or a list of statements until the given statement is reached |
SCL Goto Extensions
coming soon...
SCL Expression Extensions
coming soon...
SCL Dependency Extensions
coming soon...
SCL Basic Block Extensions
coming soon...