org.omp4j.directive

Directive

abstract class Directive extends AnyRef

Abstract directive class representing the directive information and context

There are multiple case classes implementing Directive itself.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Directive
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by any2stringfmt
  3. by any2ArrowAssoc
  4. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Directive(parent: Directive, privateVars: List[String], firstPrivateVars: List[String])(implicit schedule: DirectiveSchedule, threadNum: String, ctx: ParserRuleContext, cmt: Token, line: Int, conf: Config)

    parent

    the parent directive in hierarchy model

    privateVars

    list of variable stated in private attribute

    firstPrivateVars

    list of variable stated in firstprivate attribute

    schedule

    schedule policy

    threadNum

    thread number limitation

    ctx

    directive body context of the statement

    cmt

    AST of the comment

    line

    approximate number of the line of the directive

    conf

    configuration context

Abstract Value Members

  1. abstract def postTranslate(captured: Set[OMPVariable], capturedThis: Boolean, directiveClass: OMPClass)(implicit rewriter: TokenStreamRewriter): Unit

    Second phase of the translation.

    Second phase of the translation.

    This method must be overridden by all extending classes. The real parallel invocation is created in this method.

    captured

    captured variables

    capturedThis

    is 'this' captured?

    directiveClass

    class in the hierarchy model

    rewriter

    ANTLR rewriter

    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from Directive to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (Directive, B)

    Implicit information
    This member is added by an implicit conversion from Directive to ArrowAssoc[Directive] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  8. def addAtomicBool(baseName: String): String

    Transitive registration of an atomic boolean variable.

    Transitive registration of an atomic boolean variable.

    This method should be overridden with LockMemory trait in directives that support singles.

    baseName

    the first string that is tried

    returns

    the actual variable name

  9. var additionalItems: Set[String]

    Storage for some additional elements

    Storage for some additional elements

    Attributes
    protected
  10. def allChildren: List[Directive]

    Transitive closure

  11. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  12. var captured: Set[OMPVariable]

    The captured variables, initialed later

  13. var capturedThis: Boolean

    Is 'this' captured?

  14. def children: List[Directive]

    Directly nested directives

  15. def childrenOfType[T <: Directive](implicit arg0: ClassTag[T]): List[T]

    Extract children of type T and return them as list of T

  16. def classDeclar(implicit captured: Set[OMPVariable], capturedThis: Boolean, directiveClass: OMPClass): String

    Class declaration

    Class declaration

    Attributes
    protected
  17. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. implicit val cmt: Token

    AST of the comment

  19. lazy val contextClass: String

    Context class name

  20. lazy val contextVar: String

    Context variable name

  21. implicit val ctx: ParserRuleContext

    directive body context of the statement

  22. def deleteCmt(implicit rewriter: TokenStreamRewriter): Unit

    Delete directive comment from source code

    Delete directive comment from source code

    Attributes
    protected
  23. var directiveClass: OMPClass

    Current directive class, initialed later

  24. def ensuring(cond: (Directive) ⇒ Boolean, msg: ⇒ Any): Directive

    Implicit information
    This member is added by an implicit conversion from Directive to Ensuring[Directive] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  25. def ensuring(cond: (Directive) ⇒ Boolean): Directive

    Implicit information
    This member is added by an implicit conversion from Directive to Ensuring[Directive] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  26. def ensuring(cond: Boolean, msg: ⇒ Any): Directive

    Implicit information
    This member is added by an implicit conversion from Directive to Ensuring[Directive] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  27. def ensuring(cond: Boolean): Directive

    Implicit information
    This member is added by an implicit conversion from Directive to Ensuring[Directive] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  28. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  29. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  30. lazy val exceptionName: String

    Exception name

  31. lazy val executor: String

    Context variable name

  32. def executorBegin(implicit captured: Set[OMPVariable]): String

    First part of executor

    First part of executor

    Attributes
    protected
  33. val executorClass: String

    Runtime executor class.

  34. def executorEnd: String

    Closing task and executor

    Closing task and executor

    Attributes
    protected
  35. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  36. val firstPrivateVars: List[String]

    list of variable stated in firstprivate attribute

  37. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from Directive to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  38. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  39. def getRewrittenText(ctx: SyntaxTree)(implicit rewriter: TokenStreamRewriter): String

    Wrapper of TokenStreamRewriter.

    Wrapper of TokenStreamRewriter.getText(SyntaxTree) until it is officially supported

    Attributes
    protected
  40. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  41. def init(implicit captured: Set[OMPVariable], capturedThis: Boolean): String

    Initialization of captured variables + THAT

    Initialization of captured variables + THAT

    Attributes
    protected
  42. def initPrivates(implicit captured: Set[OMPVariable]): String

    Private and firstprivate initialization

    Private and firstprivate initialization

    Attributes
    protected
  43. def instance: String

    Instance of context class

    Instance of context class

    Attributes
    protected
  44. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  45. lazy val iter: String

    1.

    1. iterator name

  46. lazy val iter2: String

    2.

    2. iterator name

  47. lazy val iter3: String

    3.

    3. iterator name

  48. implicit val line: Int

    approximate number of the line of the directive

  49. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  50. final def notify(): Unit

    Definition Classes
    AnyRef
  51. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  52. val parent: Directive

    the parent directive in hierarchy model

  53. val parentOmpParallel: Directive

    Closest omp-parallel directive above (in the hierarchy) or null if none exists

  54. def preTranslate(implicit rewriter: TokenStreamRewriter, ompFile: OMPFile): (Set[OMPVariable], Boolean, OMPClass)

    The first phase of the translation.

    The first phase of the translation.

    Capture all used variables and prepend them with context variable name via TranslationVisitor

    rewriter

    ANTLR rewriter

    ompFile

    class hierarchy model

    returns

    tuple of captured variables, captured this and directive class

    Attributes
    protected
  55. def primitiveAssignments(implicit captured: Set[OMPVariable]): String

    Assign primitive values

    Assign primitive values

    Attributes
    protected
  56. val privateVars: List[String]

    list of variable stated in private attribute

  57. def registerChild(child: Directive): ListBuffer[Directive]

    Register child

  58. implicit val schedule: DirectiveSchedule

    schedule policy

  59. lazy val secondIter: Boolean

    Is second iterator used?

  60. def secondIterInit: String

    Initialization of 2.

    Initialization of 2. iterator (if required)

    Attributes
    protected
  61. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  62. def thatDecl(implicit capturedThis: Boolean, directiveClass: OMPClass): String

    Declaration of THAT (captured this)

    Declaration of THAT (captured this)

    Attributes
    protected
  63. def thatInit(implicit capturedThis: Boolean): String

    THAT initialization

    THAT initialization

    Attributes
    protected
  64. lazy val threadArr: String

    Thread array name

  65. lazy val threadCount: String

    Number of threads [Shortcut]

  66. implicit val threadNum: String

    thread number limitation

  67. def toAppend(implicit captured: Set[OMPVariable]): String

    Code to be appended

    Code to be appended

    Attributes
    protected
  68. def toPrepend(implicit captured: Set[OMPVariable], capturedThis: Boolean, directiveClass: OMPClass): String

    Code to be prepended

    Code to be prepended

    Attributes
    protected
  69. def toString(): String

    Source code line and directive text

    Source code line and directive text

    Definition Classes
    Directive → AnyRef → Any
  70. def translate(implicit rewriter: TokenStreamRewriter, ompFile: OMPFile, directives: DirectiveMap): Unit

    Translate this directive and delete the directive comment

    Translate this directive and delete the directive comment

    Invoke validation, preTranslate and postTranslate, in this particular order. Additionally, delete the comment and translate all nested directives that don't create their own context.

    rewriter

    ANTLR rewriter

    ompFile

    class hierarchy model

    directives

    all known directives mapped by their context

  71. def translateChildren(captured: Set[OMPVariable], capturedThis: Boolean, directiveClass: OMPClass)(implicit rewriter: TokenStreamRewriter): Unit

    Translate all children that don't have own context.

    Translate all children that don't have own context.

    captured

    captured variables

    capturedThis

    is 'this' captured?

    directiveClass

    class in the hierarchy model

    rewriter

    ANTLR rewriter

    Attributes
    protected
  72. def uniqueName(baseName: String): String

    Generate an unique name (different from every token used and every loadable class)

    Generate an unique name (different from every token used and every loadable class)

    baseName

    this string is tried at firsl

    returns

    new unique token, that is now registred

  73. def validate(directives: DirectiveMap): Unit

    Directive validation.

    Directive validation.

    For valid directives returns nothing, for invalid ones throws an exception.

    directives

    all directives mapped by context

    Exceptions thrown
    SyntaxErrorException

    if validation fails

  74. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  75. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  76. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  77. def wrap(rewriter: TokenStreamRewriter)(implicit captured: Set[OMPVariable], capturedThis: Boolean, directiveClass: OMPClass): Unit

    Modify code according to toPrepend and toAppend

  78. def [B](y: B): (Directive, B)

    Implicit information
    This member is added by an implicit conversion from Directive to ArrowAssoc[Directive] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implicit Value Members

  1. val self: Any

    Implicit information
    This member is added by an implicit conversion from Directive to StringAdd performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (directive: StringAdd).self
    Definition Classes
    StringAdd
  2. val self: Any

    Implicit information
    This member is added by an implicit conversion from Directive to StringFormat performed by method any2stringfmt in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (directive: StringFormat).self
    Definition Classes
    StringFormat

Deprecated Value Members

  1. def x: Directive

    Implicit information
    This member is added by an implicit conversion from Directive to ArrowAssoc[Directive] performed by method any2ArrowAssoc in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (directive: ArrowAssoc[Directive]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  2. def x: Directive

    Implicit information
    This member is added by an implicit conversion from Directive to Ensuring[Directive] performed by method any2Ensuring in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (directive: Ensuring[Directive]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from Directive to StringAdd

Inherited by implicit conversion any2stringfmt from Directive to StringFormat

Inherited by implicit conversion any2ArrowAssoc from Directive to ArrowAssoc[Directive]

Inherited by implicit conversion any2Ensuring from Directive to Ensuring[Directive]

Ungrouped