Package de.fraunhofer.aisec.cpg.graph
Class TypeManager
- java.lang.Object
-
- de.fraunhofer.aisec.cpg.graph.TypeManager
-
public class TypeManager extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classTypeManager.Language
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddTypeParameter(RecordDeclaration recordDeclaration, java.util.List<ParameterizedType> typeParameters)booleancheckArrayAndPointer(Type first, Type second)voidcleanup()@NonNull java.util.Optional<Type>getCommonType(@NonNull java.util.Collection<Type> types)java.util.Set<Type>getFirstOrderTypes()@Nullable LanguageFrontendgetFrontend()static TypeManagergetInstance()@NonNull TypeManager.LanguagegetLanguage()java.util.Set<Type>getSecondOrderTypes()ParameterizedTypegetTypeParameter(RecordDeclaration recordDeclaration, java.lang.String name)@NonNull java.util.Map<Type,java.util.List<Type>>getTypeState()voidhandleSingleAlias(java.lang.String rawCode, Type target, java.lang.String aliasString)voidhandleTypedef(java.lang.String rawCode)booleanisPrimitive(Type type)booleanisSupertypeOf(Type superType, Type subType)booleanisUnknown(Type type)<T extends Type>
TregisterType(T t)static voidreset()TyperesolvePossibleTypedef(Type alias)voidsetLanguageFrontend(@NonNull LanguageFrontend frontend)
-
-
-
Method Detail
-
reset
public static void reset()
-
getTypeParameter
public ParameterizedType getTypeParameter(RecordDeclaration recordDeclaration, java.lang.String name)
-
addTypeParameter
public void addTypeParameter(RecordDeclaration recordDeclaration, java.util.List<ParameterizedType> typeParameters)
-
registerType
public <T extends Type> T registerType(T t)
-
getFirstOrderTypes
public java.util.Set<Type> getFirstOrderTypes()
-
getSecondOrderTypes
public java.util.Set<Type> getSecondOrderTypes()
-
getInstance
public static TypeManager getInstance()
-
setLanguageFrontend
public void setLanguageFrontend(@NonNull LanguageFrontend frontend)
-
isPrimitive
public boolean isPrimitive(Type type)
-
isUnknown
public boolean isUnknown(Type type)
-
getCommonType
public @NonNull java.util.Optional<Type> getCommonType(@NonNull java.util.Collection<Type> types)
-
getLanguage
public @NonNull TypeManager.Language getLanguage()
-
getFrontend
public @Nullable LanguageFrontend getFrontend()
-
cleanup
public void cleanup()
-
handleTypedef
public void handleTypedef(java.lang.String rawCode)
-
handleSingleAlias
public void handleSingleAlias(java.lang.String rawCode, Type target, java.lang.String aliasString)
-
-