SPeCS Packages Documentation
    Preparing search index...

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _javaObject: any
    _defaultAttributeInfo: {
        jpMapper?: {
            accessSpecifier: typeof AccessSpecifier;
            adjustedType: typeof AdjustedType;
            arrayAccess: typeof ArrayAccess;
            arrayType: typeof ArrayType;
            asmStmt: typeof AsmStmt;
            attribute: typeof Attribute;
            binaryOp: typeof BinaryOp;
            body: typeof Body;
            boolLiteral: typeof BoolLiteral;
            break: typeof Break;
            builtinType: typeof BuiltinType;
            call: typeof Call;
            case: typeof Case;
            cast: typeof Cast;
            cilkFor: typeof CilkFor;
            cilkSpawn: typeof CilkSpawn;
            cilkSync: typeof CilkSync;
            class: typeof Class;
            clavaException: typeof ClavaException;
            comment: typeof Comment;
            continue: typeof Continue;
            cudaKernelCall: typeof CudaKernelCall;
            decl: typeof Decl;
            declarator: typeof Declarator;
            declStmt: typeof DeclStmt;
            default: typeof Default;
            deleteExpr: typeof DeleteExpr;
            elaboratedType: typeof ElaboratedType;
            empty: typeof Empty;
            emptyStmt: typeof EmptyStmt;
            enumDecl: typeof EnumDecl;
            enumeratorDecl: typeof EnumeratorDecl;
            enumType: typeof EnumType;
            expression: typeof Expression;
            exprStmt: typeof ExprStmt;
            field: typeof Field;
            file: typeof FileJp;
            floatLiteral: typeof FloatLiteral;
            function: typeof FunctionJp;
            functionType: typeof FunctionType;
            gotoStmt: typeof GotoStmt;
            if: typeof If;
            implicitValue: typeof ImplicitValue;
            include: typeof Include;
            incompleteArrayType: typeof IncompleteArrayType;
            initList: typeof InitList;
            intLiteral: typeof IntLiteral;
            joinpoint: typeof Joinpoint;
            labelDecl: typeof LabelDecl;
            labelStmt: typeof LabelStmt;
            literal: typeof Literal;
            loop: typeof Loop;
            marker: typeof Marker;
            memberAccess: typeof MemberAccess;
            memberCall: typeof MemberCall;
            method: typeof Method;
            namedDecl: typeof NamedDecl;
            newExpr: typeof NewExpr;
            omp: typeof Omp;
            op: typeof Op;
            param: typeof Param;
            parenExpr: typeof ParenExpr;
            parenType: typeof ParenType;
            pointerType: typeof PointerType;
            pragma: typeof Pragma;
            program: typeof Program;
            qualType: typeof QualType;
            record: typeof RecordJp;
            returnStmt: typeof ReturnStmt;
            scope: typeof Scope;
            statement: typeof Statement;
            struct: typeof Struct;
            switch: typeof Switch;
            switchCase: typeof SwitchCase;
            tag: typeof Tag;
            tagType: typeof TagType;
            templateSpecializationType: typeof TemplateSpecializationType;
            ternaryOp: typeof TernaryOp;
            this: typeof This;
            type: typeof Type;
            typedefDecl: typeof TypedefDecl;
            typedefNameDecl: typeof TypedefNameDecl;
            typedefType: typeof TypedefType;
            unaryExprOrType: typeof UnaryExprOrType;
            unaryOp: typeof UnaryOp;
            undefinedType: typeof UndefinedType;
            vardecl: typeof Vardecl;
            variableArrayType: typeof VariableArrayType;
            varref: typeof Varref;
            wrapperStmt: typeof WrapperStmt;
        };
        map?: DefaultAttributeMap;
        name: string
        | null;
        type?: PrivateMapper;
    } = ...

    Accessors

    • get ast(): string

      String with a dump of the AST representation starting from this node. This representation corresponds to the internal Java representation of the ClavaAst, where the node names correspond to Java classes. To get an equivalent representation with join point names, use the attribute 'dump'

      Returns string

    • get bitWidth(): number

      The bit width of the type returned by this join point, in relation to the definitions of its Translation Unit, or undefined if there is no type or bitwidth defined, or if the join point is not in a TranslationUnit

      Returns number

    • get data(): any

      JS object associated with this node, containing parsed data of #pragma clava data when the node can be a target of pragmas. This is a special object, managed internally, and cannot be reassigned, to change its contents requires using key-value pairs. If the node can be the target of a pragma, the information stored in this object is persisted between rebuilds.

      Returns any

    • set data(value: object): void

      JS object associated with this node, containing parsed data of #pragma clava data when the node can be a target of pragmas. This is a special object, managed internally, and cannot be reassigned, to change its contents requires using key-value pairs. If the node can be the target of a pragma, the information stored in this object is persisted between rebuilds.

      Parameters

      • value: object

      Returns void

    • get depth(): number

      The depth of this join point in the AST. If it is the root join point returns 0, if it is a child of the root node returns 1, etc.

      Returns number

    • get dump(): string

      Returns string

    • get javaFields(): string[]

      The names of the Java fields of this node. Can be used as key of the attribute 'javaValue'

      Returns string[]

      used attribute 'keys' instead, together with 'getValue'

    • get joinPointType(): string

      Returns string

    • get jpId(): string

      Id that is based on the position of the node in the code, and should remain stable between compilations (warning: only a few nodes - file, function, loop - currently support it)

      Returns string

    • get node(): object

      Returns object

    • get scopeNodes(): Joinpoint[]

      The nodes of the scope of the current join point. If this node has a body (e.g., loop, function) corresponds to the children of the body. Otherwise, returns an empty array

      Returns Joinpoint[]

    • get self(): LaraJoinPoint

      Returns LaraJoinPoint

    • get super(): LaraJoinPoint

      Returns LaraJoinPoint

    Methods

    • True, if this node is a Java instance of the given name, which corresponds to a simple Java class name of an AST node. For an equivalent function for join point names, use 'instanceOf(joinPointName)'

      Parameters

      • className: string

      Returns boolean

    • String with the full Java class name of the type of the Java field with the provided name

      Parameters

      • fieldName: string

      Returns string

    • Retrives values that have been associated to nodes of the AST with 'setUserField'

      Parameters

      • fieldName: string

      Returns object

    • True, if the given join point or AST node is the same (== test) as the current join point AST node

      Parameters

      • nodeOrJp: object

      Returns boolean

    • Parameters

      • name: string

      Returns boolean

    • Parameters

      • names: string[]

      Returns boolean

    • Adds a message that will be printed to the user after weaving finishes. Identical messages are removed

      Parameters

      • message: string

      Returns void

    • Setting data directly is not supported, this action just emits a warning and does nothing

      Parameters

      • source: object

      Returns void

    • Associates arbitrary values to nodes of the AST

      Parameters

      • fieldName: string
      • value: object

      Returns object

    • Overload which accepts a map

      Parameters

      • fieldNameAndValue: Record<string, any>

      Returns object

    • Returns string