de.uni_luebeck.isp.tessla.tessla_compiler.backends.rustBackend

Members list

Type members

Classlikes

object RustCompiler

Invokes cargo to generate a binary artifact from Rust code.

Invokes cargo to generate a binary artifact from Rust code.

Value parameters

artifactPath

A path where the final monitor binary will be copied to.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
case class RustFiles(monitor: String, main: String)

Contains the content of the translated Rust file.

Contains the content of the translated Rust file.

Value parameters

main

The main file handling IO.

monitor

The monitor library.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Class handling the translation of non-stream expressions

Class handling the translation of non-stream expressions

Attributes

Supertypes
class NonStreamCodeGeneratorInterface[String, String]
class Object
trait Matchable
class Any

Handles the translation of stream related functions.

Handles the translation of stream related functions.

Value parameters

rustNonStreamCodeGenerator

A RustNonStreamCodeGenerator that handles non-stream related code.

Attributes

Supertypes
class Object
trait Matchable
class Any
object RustUtils

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
RustUtils.type
case class SourceSegments(stateTypes: ListBuffer[String], stateTraits: ListBuffer[String], stateDef: ListBuffer[String], stateFunctions: ListBuffer[String], stateInit: ListBuffer[String], stateImpl: ListBuffer[String], defaultStateTraits: ListBuffer[String], defaultStateFunctions: ListBuffer[String], input: ListBuffer[String], timestamp: ListBuffer[String], computation: ListBuffer[String], static: ListBuffer[String], store: ListBuffer[String], delayReset: ListBuffer[String])

Contains buffers for all segments where code should be inserted.

Contains buffers for all segments where code should be inserted.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Value members

Concrete methods

def TesslaCoreToRust(userIncludes: String): TesslaPhase[ExtendedSpecification, RustFiles]

Class implementing TranslationPhase for the translation from TeSSLa Core to rust code The translation of stream functions is performed in RustStreamCodeGenerator The translation of other expressions in RustNonStreamCodeGenerator

Class implementing TranslationPhase for the translation from TeSSLa Core to rust code The translation of stream functions is performed in RustStreamCodeGenerator The translation of other expressions in RustNonStreamCodeGenerator

Value parameters

userIncludes

Optional rust code to be inserted at the top of the monitor.rs file

Attributes