StreamCodeGeneratorInterface
Abstract base class for the translation of stream code
Attributes
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
- Known subtypes
- class StreamCodeGeneratorclass RustStreamCodeGenerator
Members list
Value members
Abstract methods
Produces code for a x = const(...) expression
Produces code for a x = const(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- id
The id merge is assigned to
- ot
Type of the output stream
- trigger
Argument expression for triggering stream
- value
Argument expressions for const value
- Returns:
The modified source listing
Produces code for a x = count(...) expression
Produces code for a x = count(...) expression
Attributes
- cntStream
Expression of the stream to be counted
- currSrc
The source listing the generated block is added to.
- id
The id merge is assigned to
- Returns:
The modified source listing
Produces code for a x = defaultFrom(...) expression
Produces code for a x = defaultFrom(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- default
The stream parameter of the defaultFrom
- id
The id defaultFrom is assigned to
- ot
The type of id. Must be Events[...]
- stream
The stream parameter of the defaultFrom
- Returns:
The modified source listing
Produces code for a x = default(...) expression
Produces code for a x = default(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- defVal
The default parameter of the default
- id
The id default is assigned to
- ot
The type of id. Must be Events[...]
- stream
The stream parameter of the default
- Returns:
The modified source listing
Produces code for a x = delay(...) expression
Produces code for a x = delay(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- delay
The delay-stream parameter of the delay
- id
The id delay is assigned to
- reset
The reset-stream parameter of the delay
- Returns:
The modified source listing
Produces code for a x = filter(...) expression
Produces code for a x = filter(...) expression
Attributes
- condition
Argument expressions for filter condition stream
- currSrc
The source listing the generated block is added to.
- id
The id merge is assigned to
- ot
Type of the output stream
- value
Argument expressions for filter value stream
- Returns:
The modified source listing
Produces code for a x = fold(...) expression
Produces code for a x = fold(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- function
Expression of the function used for folding
- id
The id merge is assigned to
- init
Expression of the initial value for the folding
- ot
Type of the output stream
- stream
Expression of the stream to be folded
- Returns:
The modified source listing
Produces code for a x = last(...) expression
Produces code for a x = last(...) expression
Attributes
- clock
The trigger/clock-stream parameter of the last
- currSrc
The source listing the generated block is added to.
- id
The id last is assigned to
- ot
The type of id. Must be Events[...]
- values
The value-stream parameter of the last
- Returns:
The modified source listing
Produces code for a x = lift(...) expression
Produces code for a x = lift(...) expression
Attributes
- args
The arguments of the lift except the last one (function)
- currSrc
The source listing the generated block is added to.
- function
The lifted function
- id
The id lift is assigned to
- ot
The type of id. Must be Events[...]
- Returns:
The modified source listing
Produces code for a x = merge(...) expression
Produces code for a x = merge(...) expression
Attributes
- args
The stream expressions to be merged
- currSrc
The source listing the generated block is added to.
- id
The id merge is assigned to
- ot
The type of id. Must be Events[...]
- Returns:
The modified source listing
Produces code for a x = native:<name>(...) expression
Produces code for a x = native:<name>(...) expression
Attributes
- args
The arguments passed to e
- currSource
The source listing where the generated code is attached to.
- id
The id which is assigned (must be of stream type)
- name
The function name which is applied with args and typeArgs and then assigned
- ot
The Type of the output stream
- typeArgs
The type arguments passed to e
- Returns:
The modified source listing
Produces code for a x = nil expression
Produces code for a x = nil expression
Attributes
- currSrc
The source listing the generated block is added to.
- id
The id nil is assigned to
- ot
The type of id. Must be Events[...]
- Returns:
The modified source listing
Produces code for a x = pure(...) expression
Produces code for a x = pure(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- id
The id merge is assigned to
- ot
Type of the output stream
- valStream
Stream to be filtered
- Returns:
The modified source listing
Produces code for a x = reduce(...) expression
Produces code for a x = reduce(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- function
Expression of the function used for reducing
- id
The id merge is assigned to
- ot
Type of the output stream
- stream
Expression of the stream to be reduced
- Returns:
The modified source listing
Produces code for a x = slift(...) expression
Produces code for a x = slift(...) expression
Attributes
- args
The arguments of the lift except the last one (function)
- currSrc
The source listing the generated block is added to.
- function
The lifted function
- id
The id slift is assigned to
- ot
The type of id. Must be Events[...]
- Returns:
The modified source listing
Produces code for a x = time(...) expression
Produces code for a x = time(...) expression
Attributes
- currSrc
The source listing the generated block is added to.
- id
The id time is assigned to
- stream
The base-stream parameter of the time
- Returns:
The modified source listing
Produces code for a x = unitIf(...) expression
Produces code for a x = unitIf(...) expression
Attributes
- cond
Expression of the stream with the condition for unitIf
- currSrc
The source listing the generated block is added to.
- id
The id merge is assigned to
- Returns:
The modified source listing
Concrete methods
Translates an assignment to a stream variable to the corresponding ImpLan Code and attaches it in a given source listing. The assigned expression has to be (and is always in TeSSLa Core) an application.
Translates an assignment to a stream variable to the corresponding ImpLan Code and attaches it in a given source listing. The assigned expression has to be (and is always in TeSSLa Core) an application.
Attributes
- args
The arguments passed to e
- currSource
The source listing where the generated code is attached to. It is attached to the stepSource section of the source listing.
- e
The expression which is applicated with args and typeArgs and then assigned
- id
The id which is assigned (must be of stream type)
- typeArgs
The type arguments passed to e
- Returns:
The modified source listing
Translates a definition expression, which is always an assignment of an external signal application to a stream variable and attaches it in a given source collection.
Translates a definition expression, which is always an assignment of an external signal application to a stream variable and attaches it in a given source collection.
Attributes
- currSrc
The source listing where the generated code is attached to.
- definitions
The map with all definition expressions
- expression
The application expression
- id
The id which is assigned (must be of stream type)
- Returns:
The modified source listing