StreamCodeGeneratorInterface
Abstract base class for the translation of stream code
Attributes
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class RustStreamCodeGeneratorclass StreamCodeGenerator
Members list
Value members
Abstract methods
Produces code for a x = const(...) expression
Produces code for a x = const(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = count(...) expression
Produces code for a x = count(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = defaultFrom(...) expression
Produces code for a x = defaultFrom(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = default(...) expression
Produces code for a x = default(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = delay(...) expression
Produces code for a x = delay(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = filter(...) expression
Produces code for a x = filter(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = fold(...) expression
Produces code for a x = fold(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = last(...) expression
Produces code for a x = last(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = lift(...) expression
Produces code for a x = lift(...) expression
Value parameters
- 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[...]
Attributes
- Returns
-
The modified source listing
Produces code for a x = merge(...) expression
Produces code for a x = merge(...) expression
Value parameters
- 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[...]
Attributes
- Returns
-
The modified source listing
Produces code for a x = native:<name>(...) expression
Produces code for a x = native:<name>(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = nil expression
Produces code for a x = nil expression
Value parameters
- 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[...]
Attributes
- Returns
-
The modified source listing
Produces code for a x = pure(...) expression
Produces code for a x = pure(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = reduce(...) expression
Produces code for a x = reduce(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = slift(...) expression
Produces code for a x = slift(...) expression
Value parameters
- 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[...]
Attributes
- Returns
-
The modified source listing
Produces code for a x = time(...) expression
Produces code for a x = time(...) expression
Value parameters
- 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
Attributes
- Returns
-
The modified source listing
Produces code for a x = unitIf(...) expression
Produces code for a x = unitIf(...) expression
Value parameters
- 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
Attributes
- 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.
Value parameters
- 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
Attributes
- 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.
Value parameters
- 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)
Attributes
- Returns
-
The modified source listing