Class RecordDeclarationContext
- java.lang.Object
-
- com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext<RecordDeclaration>
-
- com.github.javaparser.symbolsolver.javaparsermodel.contexts.RecordDeclarationContext
-
- All Implemented Interfaces:
Context
public class RecordDeclarationContext extends AbstractJavaParserContext<RecordDeclaration>
-
-
Field Summary
Fields Modifier and Type Field Description private JavaParserTypeDeclarationAdapter
javaParserTypeDeclarationAdapter
-
Fields inherited from class com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext
typeSolver, wrappedNode
-
-
Constructor Summary
Constructors Constructor Description RecordDeclarationContext(RecordDeclaration wrappedNode, TypeSolver typeSolver)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<ResolvedFieldDeclaration>
fieldsExposedToChild(Node child)
The fields that are declared and in this immediate context made visible to a given child.private ResolvedReferenceTypeDeclaration
getDeclaration()
SymbolReference<ResolvedConstructorDeclaration>
solveConstructor(java.util.List<ResolvedType> argumentsTypes)
We find the method declaration which is the best match for the given name and list of typeParametersValues.java.util.Optional<ResolvedType>
solveGenericType(java.lang.String name)
Default to no generics available in this context, delegating solving to the parent context.SymbolReference<ResolvedMethodDeclaration>
solveMethod(java.lang.String name, java.util.List<ResolvedType> argumentsTypes, boolean staticOnly)
We find the method declaration which is the best match for the given name and list of typeParametersValues.SymbolReference<? extends ResolvedValueDeclaration>
solveSymbol(java.lang.String name)
Used where a symbol is being used (e.g.java.util.Optional<Value>
solveSymbolAsValue(java.lang.String name)
Used where a symbol is being used (e.g.SymbolReference<ResolvedTypeDeclaration>
solveType(java.lang.String name, java.util.List<ResolvedType> typeArguments)
Method used to solve a name with an expected list of type arguments.-
Methods inherited from class com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext
equals, findExposedPatternInParentContext, findTypeDeclarations, getParent, getScope, getWrappedNode, hashCode, negatedTypePatternExprsExposedFromChildren, solveMethodAsUsage, solveSymbolInParentContext, solveWith, solveWithAsValue, typePatternExprsDiscoveredInPattern, typePatternExprsExposedFromChildren
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.github.javaparser.resolution.Context
fieldDeclarationInScope, localVariableDeclarationInScope, localVariablesExposedToChild, parameterDeclarationInScope, parametersExposedToChild, solveGenericTypeInParentContext, solveMethodInParentContext, solveSymbolAsValueInParentContext, solveType, solveTypeInParentContext, solveTypeInParentContext, typePatternExprInScope, typePatternExprsExposedToChild
-
-
-
-
Field Detail
-
javaParserTypeDeclarationAdapter
private JavaParserTypeDeclarationAdapter javaParserTypeDeclarationAdapter
-
-
Constructor Detail
-
RecordDeclarationContext
public RecordDeclarationContext(RecordDeclaration wrappedNode, TypeSolver typeSolver)
-
-
Method Detail
-
solveSymbol
public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(java.lang.String name)
Description copied from interface:Context
Used where a symbol is being used (e.g. solvingx
when used as an argumentdoubleThis(x)
, or calculationreturn x * 2;
).- Parameters:
name
- the variable / reference / identifier used.- Returns:
- // FIXME: Better documentation on how this is different to solveSymbolAsValue()
-
solveSymbolAsValue
public java.util.Optional<Value> solveSymbolAsValue(java.lang.String name)
Description copied from interface:Context
Used where a symbol is being used (e.g. solvingx
when used as an argumentdoubleThis(x)
, or calculationreturn x * 2;
).- Parameters:
name
- the variable / reference / identifier used.- Returns:
- // FIXME: Better documentation on how this is different to solveSymbol()
-
solveGenericType
public java.util.Optional<ResolvedType> solveGenericType(java.lang.String name)
Description copied from interface:Context
Default to no generics available in this context, delegating solving to the parent context. Contexts which have generics available to it will override this method. For example class and method declarations, and method calls.- Parameters:
name
- For example, solvingT
withinclass Foo<T> {}
or- Returns:
- The resolved generic type, if found.
-
solveType
public SymbolReference<ResolvedTypeDeclaration> solveType(java.lang.String name, java.util.List<ResolvedType> typeArguments)
Description copied from interface:Context
Method used to solve a name with an expected list of type arguments.
This method differs fromContext.solveType(String)
by taking the type arguments in consideration. For example, lets imagine that we have a project containing the following classes:- com/example/Alpha.java
- com/example/Beta.java
- Parameters:
name
- The name to be solved.typeArguments
- The list of expected type arguments.- Returns:
- The declaration associated with the given type name.
-
solveMethod
public SymbolReference<ResolvedMethodDeclaration> solveMethod(java.lang.String name, java.util.List<ResolvedType> argumentsTypes, boolean staticOnly)
Description copied from interface:Context
We find the method declaration which is the best match for the given name and list of typeParametersValues.
-
solveConstructor
public SymbolReference<ResolvedConstructorDeclaration> solveConstructor(java.util.List<ResolvedType> argumentsTypes)
Description copied from interface:Context
We find the method declaration which is the best match for the given name and list of typeParametersValues.
-
fieldsExposedToChild
public java.util.List<ResolvedFieldDeclaration> fieldsExposedToChild(Node child)
Description copied from interface:Context
The fields that are declared and in this immediate context made visible to a given child. This list could include values which are shadowed.
-
getDeclaration
private ResolvedReferenceTypeDeclaration getDeclaration()
-
-