Package org.sonar.python.semantic
Class ClassSymbolImpl
- java.lang.Object
-
- org.sonar.python.semantic.SymbolImpl
-
- org.sonar.python.semantic.ClassSymbolImpl
-
- All Implemented Interfaces:
ClassSymbol,Symbol
public class ClassSymbolImpl extends SymbolImpl implements ClassSymbol
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.sonar.plugins.python.api.symbols.Symbol
Symbol.Kind
-
-
Constructor Summary
Constructors Constructor Description ClassSymbolImpl(String name, String fullyQualifiedName)ClassSymbolImpl(String name, String fullyQualifiedName, LocationInFile definitionLocation)ClassSymbolImpl(ClassDef classDef, String fullyQualifiedName, PythonFile pythonFile)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddMembers(Collection<Symbol> members)voidaddSuperClass(Symbol symbol)booleancanBeOrExtend(String fullyQualifiedClassName)Set<Symbol>declaredMembers()LocationInFiledefinitionLocation()booleanhasUnresolvedTypeHierarchy()booleanhasUnresolvedTypeHierarchy(boolean includeAmbiguousSymbols)booleanisOrExtends(String fullyQualifiedClassName)booleanisOrExtends(ClassSymbol other)voidremoveUsages()Optional<Symbol>resolveMember(String memberName)voidsetHasSuperClassWithoutSymbol()List<Symbol>superClasses()-
Methods inherited from class org.sonar.python.semantic.SymbolImpl
fullyQualifiedName, inferredType, is, kind, name, setInferredType, setKind, usages
-
-
-
-
Constructor Detail
-
ClassSymbolImpl
public ClassSymbolImpl(ClassDef classDef, @Nullable String fullyQualifiedName, PythonFile pythonFile)
-
ClassSymbolImpl
public ClassSymbolImpl(String name, @Nullable String fullyQualifiedName, @Nullable LocationInFile definitionLocation)
-
-
Method Detail
-
superClasses
public List<Symbol> superClasses()
- Specified by:
superClassesin interfaceClassSymbol
-
addSuperClass
public void addSuperClass(Symbol symbol)
-
hasUnresolvedTypeHierarchy
public boolean hasUnresolvedTypeHierarchy()
- Specified by:
hasUnresolvedTypeHierarchyin interfaceClassSymbol
-
hasUnresolvedTypeHierarchy
public boolean hasUnresolvedTypeHierarchy(boolean includeAmbiguousSymbols)
-
declaredMembers
public Set<Symbol> declaredMembers()
- Specified by:
declaredMembersin interfaceClassSymbol
-
resolveMember
public Optional<Symbol> resolveMember(String memberName)
- Specified by:
resolveMemberin interfaceClassSymbol
-
definitionLocation
public LocationInFile definitionLocation()
- Specified by:
definitionLocationin interfaceClassSymbol
-
isOrExtends
public boolean isOrExtends(String fullyQualifiedClassName)
- Specified by:
isOrExtendsin interfaceClassSymbol
-
isOrExtends
public boolean isOrExtends(ClassSymbol other)
- Specified by:
isOrExtendsin interfaceClassSymbol
-
canBeOrExtend
public boolean canBeOrExtend(String fullyQualifiedClassName)
- Specified by:
canBeOrExtendin interfaceClassSymbol
-
addMembers
public void addMembers(Collection<Symbol> members)
-
setHasSuperClassWithoutSymbol
public void setHasSuperClassWithoutSymbol()
-
removeUsages
public void removeUsages()
- Overrides:
removeUsagesin classSymbolImpl
-
-