object CInstrumentation
Contains data structures and a functionality used to instrument C code depending on the provided annotated TeSSLa specification. This makes use of the annotations defined in the standard library InstrumentationAnnotations module, which denote which parts of the code should be instrumented and which events should be produced at those locations.
- Alphabetic
- By Inheritance
- CInstrumentation
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- final case class ArrayAccess(base: Pattern) extends Pattern with Product with Serializable
Describes accessing an array, e.g.
Describes accessing an array, e.g. foo[].
- final case class Dereference(base: Pattern) extends Pattern with Product with Serializable
Describes a de-reference
* - trait IFullFunDesc extends IFunDesc
Extension of a function description by parameter names
- trait IFunDesc extends AnyRef
Describes a C function
- trait ILibraryInterface extends AnyRef
Defines the callbacks an instrumentation library has to define.
Defines the callbacks an instrumentation library has to define. The
checkcallbacks are called whenever their respective action (e.g. call, return) occurs in the source code, returning the name of the callback function to be generated in C code, or an empty String if no callback should be generated for this action. - class LibraryInterfaceFactoryWorker extends Translator[ILibraryInterface]
The translator class associated with LibraryInterfaceFactory.
- sealed abstract class Pattern extends AnyRef
Describes an arbitrary C pattern.
- final case class Reference(base: Pattern) extends Pattern with Product with Serializable
Describes a reference
& - final case class StructUnionAccess(base: Pattern, fieldName: String, isArrow: Boolean = false) extends Pattern with Product with Serializable
Describes access of a field on a C struct, e.g.
Describes access of a field on a C struct, e.g. foo.a or foo->a.
- final case class Variable(functionName: Option[String], name: String) extends Pattern with Product with Serializable
Describes a variable, optionally prepended by a function name.
Describes a variable, optionally prepended by a function name. E.g. foo::x or y.
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- object LibraryInterfaceFactory extends TranslationPhase[core.TesslaAST.Core.Specification, ILibraryInterface]
Translation phase which creates a library interface from a given specification.
Translation phase which creates a library interface from a given specification. This means that the interface already takes into consideration which annotations are used in the specification, to only return callback function names where callbacks should be generated, and type-checking the generated events versus the declared event stream in TeSSLa.
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated