Class IncompleteType
java.lang.Object
de.fraunhofer.aisec.cpg.graph.Node
de.fraunhofer.aisec.cpg.graph.types.Type
de.fraunhofer.aisec.cpg.graph.types.IncompleteType
- All Implemented Interfaces:
Persistable,IVisitable<de.fraunhofer.aisec.cpg.graph.Node>
public class IncompleteType extends Type
IncompleteTypes are defined as object with unknown size. For instance: void, arrays of unknown
length, forward declarated classes in C++
Right now we are only dealing with void for objects with unknown size, therefore the name is fixed to void. However, this can be changed in future, in order to support other objects with unknown size apart from void. Therefore this Type is not called VoidType
-
Nested Class Summary
Nested classes/interfaces inherited from class de.fraunhofer.aisec.cpg.graph.types.Type
Type.Origin, Type.Qualifier, Type.StorageNested classes/interfaces inherited from class de.fraunhofer.aisec.cpg.graph.Node
de.fraunhofer.aisec.cpg.graph.Node.Companion -
Field Summary
Fields inherited from class de.fraunhofer.aisec.cpg.graph.types.Type
origin, primitive, qualifier, storage, superTypes, UNKNOWN_TYPE_STRINGFields inherited from class de.fraunhofer.aisec.cpg.graph.Node
Companion, EMPTY_NAME, TO_STRING_STYLE -
Constructor Summary
Constructors Constructor Description IncompleteType()IncompleteType(Type type) -
Method Summary
Modifier and Type Method Description Typedereference()Typeduplicate()booleanequals(java.lang.Object o)inthashCode()Typereference(PointerType.PointerOrigin pointerOrigin)Methods inherited from class de.fraunhofer.aisec.cpg.graph.types.Type
getQualifier, getReferenceDepth, getRoot, getStorage, getSuperTypes, getTypeName, getTypeOrigin, isFirstOrderType, isPrimitive, isSimilar, refreshNames, setAdditionalTypeKeywords, setQualifier, setRoot, setStorage, setTypeOrigin, toStringMethods inherited from class de.fraunhofer.aisec.cpg.graph.Node
addAnnotations, addNextDFG, addNextEOG, addPrevDFG, addPrevEOG, addTypedef, clearNextEOG, disconnectFromGraph, getAnnotations, getArgumentIndex, getCode, getComment, getFile, getId, getLocation, getName, getNextDFG, getNextEOG, getNextEOGEdges, getPrevDFG, getPrevEOG, getPrevEOGEdges, getTypedefs, isImplicit, isInferred, removeNextDFG, removePrevDFG, removePrevEOGEntry, setAnnotations, setArgumentIndex, setCode, setComment, setFile, setId, setImplicit, setInferred, setLocation, setName, setNextDFG, setNextEOG, setNextEOGEdges, setPrevDFG, setPrevEOG, setPrevEOGEdges, setTypedefsMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface de.fraunhofer.aisec.cpg.processing.IVisitable
accept
-
Constructor Details
-
IncompleteType
public IncompleteType() -
IncompleteType
-
-
Method Details
-
reference
-
dereference
- Specified by:
dereferencein classType- Returns:
- dereferencing void results in void therefore the same type is returned
-
duplicate
-
equals
public boolean equals(java.lang.Object o) -
hashCode
public int hashCode()
-