Klasse MessageSend
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement
org.aspectj.org.eclipse.jdt.internal.compiler.ast.Expression
org.aspectj.org.eclipse.jdt.internal.compiler.ast.MessageSend
- Alle implementierten Schnittstellen:
Invocation
,IPolyExpression
,InvocationSite
,TypeConstants
,TypeIds
- Bekannte direkte Unterklassen:
CodeSnippetMessageSend
,CompletionOnMessageSend
,CompletionOnMessageSendName
,JavadocMessageSend
,KnownMessageSend
,Proceed
,SelectionOnMessageSend
AspectJ Extension - support for MethodBinding.alwaysNeedsAccessMethod
Possible mergeconflict? Was InvocationSite but now Invocation in implements clause
-
Verschachtelte Klassen - Übersicht
Von Schnittstelle geerbte verschachtelte Klassen/Schnittstellen org.aspectj.org.eclipse.jdt.internal.compiler.lookup.InvocationSite
InvocationSite.EmptyWithAstNode
Von Schnittstelle geerbte verschachtelte Klassen/Schnittstellen org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants
TypeConstants.BoundCheckStatus, TypeConstants.CloseMethodRecord, TypeConstants.DangerousMethod
-
Feldübersicht
Modifizierer und TypFeldBeschreibungprotected boolean
boolean
long
char[]
Von Klasse geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.ast.Expression
constant, implicitConversion, NO_EXPRESSIONS, resolvedType, statementEnd
Von Klasse geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement
COMPLAINED_FAKE_REACHABLE, COMPLAINED_UNREACHABLE, NOT_COMPLAINED
Von Klasse geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
Bit1, Bit10, Bit11, Bit12, Bit13, Bit14, Bit15, Bit16, Bit17, Bit18, Bit19, Bit2, Bit20, Bit21, Bit22, Bit23, Bit24, Bit25, Bit26, Bit27, Bit28, Bit29, Bit3, Bit30, Bit31, Bit32, Bit32L, Bit33L, Bit34L, Bit35L, Bit36L, Bit37L, Bit38L, Bit39L, Bit4, Bit40L, Bit41L, Bit42L, Bit43L, Bit44L, Bit45L, Bit46L, Bit47L, Bit48L, Bit49L, Bit5, Bit50L, Bit51L, Bit52L, Bit53L, Bit54L, Bit55L, Bit56L, Bit57L, Bit58L, Bit59L, Bit6, Bit60L, Bit61L, Bit62L, Bit63L, Bit64L, Bit7, Bit8, Bit9, bits, BlockExit, CanBeStatic, ContainsAssertion, DepthMASK, DepthSHIFT, DidResolve, DisableUnnecessaryCastCheck, DiscardEnclosingInstance, DocumentedCasesOmitted, DocumentedFallthrough, Empty, ErrorInSignature, FirstAssignmentToLocal, GenerateCheckcast, HasAbstractMethods, HasAllMethodBodies, HasBeenGenerated, HasBeenResolved, HasFunctionalInterfaceTypes, HasLocalType, HasSyntaxErrors, HasTypeAnnotations, IgnoreNoEffectAssignCheck, IgnoreRawTypeCheck, inModule, InsideExpressionStatement, InsideJavadoc, INVOCATION_ARGUMENT_OK, INVOCATION_ARGUMENT_UNCHECKED, INVOCATION_ARGUMENT_WILDCARD, IsAdditionalDeclarator, IsAnnotationDefaultValue, IsAnonymousType, IsAnySubRoutineEscaping, IsArgument, IsCanonicalConstructor, IsCapturedOuterLocal, IsCompoundAssigned, IsDefaultConstructor, IsDiamond, IsElseIfStatement, IsElseStatementUnreachable, IsForeachElementVariable, IsImplicit, IsImplicitThis, IsImplicitUnit, IsLocalDeclarationReachable, IsLocalType, IsMemberType, IsNonNull, IsReachable, IsRecovered, IsReturnedValue, IsSecondaryType, IsSecretYieldValueUsage, IsStrictlyAssigned, IsSubRoutineEscaping, IsSuperType, IsSynchronized, IsSynthetic, IsThenStatementUnreachable, IsTryBlockExiting, IsTypeElided, IsUnionType, IsUsedInPatternGuard, IsUsefulEmptyStatement, IsVarArgs, LabelUsed, NeededScope, NeedFreeReturn, NeedReceiverGenericCast, NO_ARGUMENTS, NO_RECORD_COMPONENTS, NO_TYPE_PATTERNS, OnDemand, OperatorMASK, OperatorSHIFT, OverridingMethodWithSupercall, ParenthesizedMASK, ParenthesizedSHIFT, ResolveJavadoc, RestrictiveFlagMASK, ReturnTypeIDMASK, ShadowsOuterLocal, sourceEnd, sourceStart, SuperAccess, ThenExit, Unchecked, UndocumentedEmptyBlock, UnnecessaryCast, UnsafeCast, Used
Von Schnittstelle geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants
ANNOTATION, ANNOTATION_PREFIX, ANNOTATION_SUFFIX, ANONYM_PREFIX, ANONYM_SUFFIX, ANONYMOUS_METHOD, APACHE, APACHE_DBUTILS, APACHE_IOUTILS, API, ASSERT_CLASS, ASSERT_FALSE, ASSERT_NOTNULL, ASSERT_NULL, ASSERT_TRUE, ASSERTIONS_CLASS, AUTOMATIC_MODULE_NAME, AUTOWIRED, BEANS, BOOLEAN, BYTE, CAPTURE18, CHANNELS, CHAR, CharArray_JAVA_IO_OBJECTINPUTSTREAM, CharArray_JAVA_IO_OBJECTOUTPUTSTREAM, CharArray_JAVA_IO_OBJECTSTREAMFIELD, CharArray_JAVA_LANG_ANNOTATION_ANNOTATION, CharArray_JAVA_LANG_ENUM, CharArray_JAVA_LANG_OBJECT, CharArray_JAVA_LANG_RECORD, CharArray_JAVA_LANG_RECORD_SLASH, CHECK_ARGUMENT, CHECK_NOT_NULL, CHECK_STATE, CLINIT, CLONE, CLOSE, CLOSE_QUIETLY, closeMethods, COM, COM_GOOGLE_COMMON_BASE_PRECONDITIONS, COM_GOOGLE_INJECT_INJECT, COMMONS, COMPILER, CONSTRAINT_EQUAL, CONSTRAINT_EXTENDS, CONSTRAINT_SUPER, CONTAINS, CONTAINS_ALL, CONTAINS_KEY, CONTAINS_VALUE, CORE, DEFAULT_LOCATION__ARRAY_CONTENTS, DEFAULT_LOCATION__FIELD, DEFAULT_LOCATION__PARAMETER, DEFAULT_LOCATION__RETURN_TYPE, DEFAULT_LOCATION__TYPE_ARGUMENT, DEFAULT_LOCATION__TYPE_BOUND, DEFAULT_LOCATION__TYPE_PARAMETER, DESERIALIZE_LAMBDA, DOM, DOUBLE, ECLIPSE, EQUALS, ESSENTIAL_API, FACTORY, FLOAT, FLUENT_RESOURCE_CLASSES, FOR_REMOVAL, FRAMEWORK, GET, GETCLASS, GOOGLE, GUAVA_CLOSEABLES, HASHCODE, IMPLEMENTS, INDEX_OF, INIT, INJECT_PACKAGE, INJECT_TYPE, INT, INTERNAL, INVOKE, IO, IS_INSTANCE, IS_NOTNULL, IS_NULL, IS_TRUE, ITYPEBINDING, JAVA, JAVA_BASE, JAVA_IO, JAVA_IO_CLOSEABLE, JAVA_IO_EXTERNALIZABLE, JAVA_IO_IOEXCEPTION, JAVA_IO_OBJECTINPUTSTREAM, JAVA_IO_OBJECTOUTPUTSTREAM, JAVA_IO_OBJECTSTREAMEXCEPTION, JAVA_IO_PRINTSTREAM, JAVA_IO_RESOURCE_FREE_CLOSEABLES, JAVA_IO_SERIALIZABLE, JAVA_IO_WRAPPER_CLOSEABLES, JAVA_LANG, JAVA_LANG_ANNOTATION, JAVA_LANG_ANNOTATION_ANNOTATION, JAVA_LANG_ANNOTATION_DOCUMENTED, JAVA_LANG_ANNOTATION_ELEMENTTYPE, JAVA_LANG_ANNOTATION_INHERITED, JAVA_LANG_ANNOTATION_REPEATABLE, JAVA_LANG_ANNOTATION_RETENTION, JAVA_LANG_ANNOTATION_RETENTIONPOLICY, JAVA_LANG_ANNOTATION_TARGET, JAVA_LANG_ASSERTIONERROR, JAVA_LANG_AUTOCLOSEABLE, JAVA_LANG_BOOLEAN, JAVA_LANG_BYTE, JAVA_LANG_CHARACTER, JAVA_LANG_CLASS, JAVA_LANG_CLASSNOTFOUNDEXCEPTION, JAVA_LANG_CLONEABLE, JAVA_LANG_DEPRECATED, JAVA_LANG_DOUBLE, JAVA_LANG_ENUM, JAVA_LANG_ERROR, JAVA_LANG_EXCEPTION, JAVA_LANG_FLOAT, JAVA_LANG_FUNCTIONAL_INTERFACE, JAVA_LANG_ILLEGALARGUMENTEXCEPTION, JAVA_LANG_INCOMPATIBLECLASSCHANGEERROR, JAVA_LANG_INTEGER, JAVA_LANG_INVOKE_LAMBDAMETAFACTORY, JAVA_LANG_INVOKE_METHODHANDLE, JAVA_LANG_INVOKE_METHODHANDLE_$_POLYMORPHICSIGNATURE, JAVA_LANG_INVOKE_METHODHANDLE_POLYMORPHICSIGNATURE, JAVA_LANG_INVOKE_METHODHANDLES, JAVA_LANG_INVOKE_SERIALIZEDLAMBDA, JAVA_LANG_INVOKE_VARHANDLE, JAVA_LANG_ITERABLE, JAVA_LANG_LONG, JAVA_LANG_NOCLASSDEFERROR, JAVA_LANG_NOSUCHFIELDERROR, JAVA_LANG_OBJECT, JAVA_LANG_OVERRIDE, JAVA_LANG_RECORD, JAVA_LANG_REFLECT_CONSTRUCTOR, JAVA_LANG_REFLECT_FIELD, JAVA_LANG_REFLECT_METHOD, JAVA_LANG_RUNTIME_OBJECTMETHODS, JAVA_LANG_RUNTIME_SWITCHBOOTSTRAPS, JAVA_LANG_RUNTIMEEXCEPTION, JAVA_LANG_SAFEVARARGS, JAVA_LANG_SHORT, JAVA_LANG_STRING, JAVA_LANG_STRINGBUFFER, JAVA_LANG_STRINGBUILDER, JAVA_LANG_SUPPRESSWARNINGS, JAVA_LANG_SYSTEM, JAVA_LANG_THROWABLE, JAVA_LANG_VOID, JAVA_NIO_FILE_FILES, JAVA_UTIL_ARRAYS, JAVA_UTIL_COLLECTION, JAVA_UTIL_ITERATOR, JAVA_UTIL_LIST, JAVA_UTIL_MAP, JAVA_UTIL_OBJECTS, JAVA_UTIL_STREAM, JAVA_UTIL_ZIP_WRAPPER_CLOSEABLES, JAVAC, JAVAX, JAVAX_ANNOTATION_INJECT_INJECT, JAVAX_RMI_CORBA_STUB, JDK, JDK_INTERNAL_JAVAC_PREVIEW_FEATURE, JDK_INTERNAL_PREVIEW_FEATURE, JDK_INTERNAL_VALUEBASED, JDT, JUNIT, JUNIT_FRAMEWORK_ASSERT, JUPITER, KEYWORD_EXTENDS, LAMBDA_TYPE, LANG, LANG3, LAST_INDEX_OF, LENGTH, LONG, LOOKUP, MAIN, META_INF_MANIFEST_MF, METHOD_SOURCE, MODULE_INFO_CLASS_NAME, MODULE_INFO_CLASS_NAME_STRING, MODULE_INFO_FILE_NAME, MODULE_INFO_FILE_NAME_STRING, MODULE_INFO_NAME, MODULE_INFO_NAME_STRING, NEXT, NIO, NON_NULL, NOT_NULL, NULL, OBJECT, ONE_UTIL_STREAMEX, OPTIONAL, ORG, ORG_APACHE_COMMONS_LANG_VALIDATE, ORG_APACHE_COMMONS_LANG3_VALIDATE, ORG_ECLIPSE_CORE_RUNTIME_ASSERT, ORG_ECLIPSE_JDT_CORE_DOM_ITYPEBINDING, ORG_ECLIPSE_JDT_INTERNAL_COMPILER_LOOKUP_TYPEBINDING, ORG_JUNIT_ASSERT, ORG_JUNIT_JUPITER_API_ASSERTIONS, ORG_JUNIT_METHOD_SOURCE, ORG_SPRING_AUTOWIRED, OTHER_WRAPPER_CLOSEABLES, PACKAGE_INFO_NAME, PARAMS, PERMITS, PROVIDER, READOBJECT, READRESOLVE, RECORD_CLASS, RECORD_RESTRICTED_IDENTIFIER, REFLECT, REMOVE, REMOVE_ALL, REQUIRE_NON_NULL, REQUIRED, RESOURCE_FREE_CLOSEABLE_J_U_STREAMS, RESOURCE_FREE_CLOSEABLE_STREAMEX, RETAIN_ALL, RUNTIME, SEALED, SERIALPERSISTENTFIELDS, SERIALVERSIONUID, SHORT, SINCE, SPRING, SYNTHETIC_ACCESS_METHOD_PREFIX, SYNTHETIC_ASSERT_DISABLED, SYNTHETIC_CLASS, SYNTHETIC_ENCLOSING_INSTANCE_PREFIX, SYNTHETIC_ENUM_CONSTANT_INITIALIZATION_METHOD_PREFIX, SYNTHETIC_ENUM_VALUES, SYNTHETIC_OUTER_LOCAL_PREFIX, SYNTHETIC_STATIC_FACTORY, SYNTHETIC_SWITCH_ENUM_TABLE, TOSTRING, TYPE, TYPE_PARAMETER_TARGET, TYPE_USE_TARGET, TYPEBINDING, UPPER_ANNOTATION_TYPE, UPPER_CLASS, UPPER_CONSTRUCTOR, UPPER_FIELD, UPPER_LOCAL_VARIABLE, UPPER_METHOD, UPPER_MODULE, UPPER_PACKAGE, UPPER_PARAMETER, UPPER_RECORD_COMPONENT, UPPER_RUNTIME, UPPER_SOURCE, UTIL, VALIDATE_CLASS, VALUE, VALUEOF, VALUES, VAR, VOID, WILDCARD_CAPTURE, WILDCARD_CAPTURE_NAME_PREFIX, WILDCARD_CAPTURE_NAME_SUFFIX, WILDCARD_CAPTURE_SIGNABLE_NAME_SUFFIX, WILDCARD_EXTENDS, WILDCARD_MINUS, WILDCARD_NAME, WILDCARD_PLUS, WILDCARD_STAR, WILDCARD_SUPER, WRITEOBJECT, WRITEREPLACE, YIELD, ZIP
Von Schnittstelle geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds
BitAnyNullAnnotation, BitAutoCloseable, BitCloseable, BitCollection, BitList, BitMap, BitNonNullAnnotation, BitNonNullByDefaultAnnotation, BitNullableAnnotation, BitResourceFreeCloseable, BitUninitialized, BitUninternedType, BitWrapperCloseable, Boolean2Boolean, Boolean2Int, Boolean2String, BOXING, Byte2Byte, Byte2Char, Byte2Double, Byte2Float, Byte2Int, Byte2Long, Byte2Short, Byte2String, Char2Byte, Char2Char, Char2Double, Char2Float, Char2Int, Char2Long, Char2Short, Char2String, COMPILE_TYPE_MASK, Double2Byte, Double2Char, Double2Double, Double2Float, Double2Int, Double2Long, Double2Short, Double2String, Float2Byte, Float2Char, Float2Double, Float2Float, Float2Int, Float2Long, Float2Short, Float2String, IMPLICIT_CONVERSION_MASK, InheritableBits, Int2Byte, Int2Char, Int2Double, Int2Float, Int2Int, Int2Long, Int2Short, Int2String, Long2Byte, Long2Char, Long2Double, Long2Float, Long2Int, Long2Long, Long2Short, Long2String, NoId, Null2Null, Null2String, Object2boolean, Object2byte, Object2char, Object2double, Object2float, Object2int, Object2long, Object2Object, Object2short, Object2String, Short2Byte, Short2Char, Short2Double, Short2Float, Short2Int, Short2Long, Short2Short, Short2String, String2String, T_boolean, T_byte, T_char, T_ComGoogleCommonBasePreconditions, T_ComGoogleInjectInject, T_double, T_float, T_int, T_JavaIoException, T_JavaIoExternalizable, T_JavaIoObjectStreamException, T_JavaIoPrintStream, T_JavaIoSerializable, T_JavaLangAnnotationAnnotation, T_JavaLangAnnotationDocumented, T_JavaLangAnnotationElementType, T_JavaLangAnnotationInherited, T_JavaLangAnnotationRepeatable, T_JavaLangAnnotationRetention, T_JavaLangAnnotationRetentionPolicy, T_JavaLangAnnotationTarget, T_JavaLangAssertionError, T_JavaLangAutoCloseable, T_JavaLangBoolean, T_JavaLangByte, T_JavaLangCharacter, T_JavaLangClass, T_JavaLangClassNotFoundException, T_JavaLangCloneable, T_JavaLangDeprecated, T_JavaLangDouble, T_JavaLangEnum, T_JavaLangError, T_JavaLangException, T_JavaLangFloat, T_JavaLangFunctionalInterface, T_JavaLangIllegalArgumentException, T_JavaLangInteger, T_JavaLangInvokeMethodHandlePolymorphicSignature, T_JavaLangIterable, T_JavaLangLong, T_JavaLangNoClassDefError, T_JavaLangObject, T_JavaLangOverride, T_JavaLangRecord, T_JavaLangReflectConstructor, T_JavaLangReflectField, T_JavaLangReflectMethod, T_JavaLangRuntimeException, T_JavaLangSafeVarargs, T_JavaLangShort, T_JavaLangString, T_JavaLangStringBuffer, T_JavaLangStringBuilder, T_JavaLangSuppressWarnings, T_JavaLangSystem, T_JavaLangThrowable, T_JavaLangVoid, T_JavaUtilCollection, T_JavaUtilIterator, T_JavaUtilList, T_JavaUtilMap, T_JavaUtilObjects, T_JavaxInjectInject, T_JdkInternalPreviewFeature, T_JunitFrameworkAssert, T_LastWellKnownTypeId, T_long, T_null, T_OrgApacheCommonsLang3Validate, T_OrgApacheCommonsLangValidate, T_OrgEclipseCoreRuntimeAssert, T_OrgJunitAssert, T_OrgJunitJupiterApiAssertions, T_OrgJunitJupiterParamsProviderMethodSource, T_OrgSpringframeworkBeansFactoryAnnotationAutowired, T_short, T_undefined, T_void, UNBOXING
-
Konstruktorübersicht
-
Methodenübersicht
Modifizierer und TypMethodeBeschreibunganalyseCode
(BlockScope currentScope, FlowContext flowContext, FlowInfo flowInfo) binding()
Answer the resolved method binding of this invocationboolean
checkNPE
(BlockScope scope, FlowContext flowContext, FlowInfo flowInfo, int ttlForFieldCheck) Check this expression against potential NPEs, which may occur: if the expression is the receiver in a field access, qualified allocation, array reference or message send incl. implicit message sends like it happens for the collection in a foreach statement. if the expression is subject to unboxing if the expression is the exception in a throw statement If a risk of NPE is detected report it to the context.void
Discard any state from type inference when compilation is done.void
computeConversion
(Scope scope, TypeBinding runtimeTimeType, TypeBinding compileTimeType) Base types need that the widening is explicitly done by the compiler using some bytecode like i2f.protected TypeBinding
findMethodBinding
(BlockScope scope) freshInferenceContext
(Scope scope) When inference for this invocationSite starts, get a fresh inference context, initialized from this site.void
generateCode
(BlockScope currentScope, CodeStream codeStream, boolean valueRequired) MessageSend code generationRetrieve an inference context for the given method.Implementation ofInvocationSite.invocationTargetType()
suitable at this level.boolean
isBoxingCompatibleWith
(TypeBinding targetType, Scope scope) boolean
isCompatibleWith
(TypeBinding targetType, Scope scope) boolean
boolean
isPolyExpression
(MethodBinding resolutionCandidate) Variant of isPolyExpression() to be used during type inference, when a resolution candidate exists.boolean
boolean
boolean
void
manageSyntheticAccessIfNecessary
(BlockScope currentScope, FlowInfo flowInfo) int
int
int
nullStatus
(FlowInfo flowInfo, FlowContext flowContext) postConversionType
(Scope scope) Returns the type of the expression after required implicit conversions.printExpression
(int indent, StringBuffer output) boolean
void
recordFlowUpdateOnResult
(LocalVariableBinding local, boolean nonNullIfTrue, boolean negatable) void
registerInferenceContext
(ParameterizedGenericMethodBinding method, InferenceContext18 infCtx18) Register the given inference context, which produced the given method as its intermediate result.void
registerResult
(TypeBinding targetType, MethodBinding method) Record result against target typeprotected void
resolveMethodBinding
(BlockScope scope, TypeBinding[] argumentTypes) resolveType
(BlockScope scope) Resolve the type of this expression in the context of a blockScopevoid
setActualReceiverType
(ReferenceBinding receiverType) void
setDepth
(int depth) void
setExpectedType
(TypeBinding expectedType) Record the type expectation before this expression is typechecked.void
setExpressionContext
(ExpressionContext context) void
setFieldIndex
(int depth) boolean
sIsMoreSpecific
(TypeBinding s, TypeBinding t, Scope scope) boolean
void
traverse
(ASTVisitor visitor, BlockScope blockScope) Traverse an expression in the context of a blockScopeprotected void
updateFlowOnBooleanResult
(FlowInfo flowInfo, boolean result) Back-propagation of flow info: before analysing a branch where a given condition is known to hold true/false respectively, ask the condition to contribute its information to the given flowInfo.Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.ast.Expression
addPatternVariables, analyseCode, checkCastTypesCompatibility, checkNPE, checkNPEbyUnboxing, checkUnsafeCast, collectPatternVariablesToScope, computeNullStatus, forcedToBeRaw, generateCode, generateOptimizedBoolean, generateOptimizedStringConcatenation, generateOptimizedStringConcatenationCreation, getDirectBinding, getPatternVariable, getPolyExpressions, isCompactableOperation, isConstantValueOfTypeAssignableToType, isConstantValueRepresentable, isExactMethodReference, isFunctionalType, isPertinentToApplicability, isPotentiallyCompatibleWith, isTrulyExpression, isTypeReference, localVariableBinding, markAsNonNull, nullAnnotatedVariableBinding, optimizedBooleanConstant, optimizedNullComparisonConstant, print, printStatement, resolve, resolveExpressionExpecting, resolveExpressionType, resolveType, resolveTypeExpecting, reusableJSRTarget, tagAsNeedCheckCast, tagAsUnnecessaryCast, toTypeReference, traverse
Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.ast.Statement
addPatternVariablesWhenFalse, addPatternVariablesWhenTrue, analyseArguments, branchChainTo, breaksOut, canCompleteNormally, checkAgainstNullTypeAnnotation, complainIfUnreachable, completesByContinue, containsPatternVariable, continueCompletes, continuesAtOuterLabel, doesNotCompleteNormally, doNotReportUnreachable, expectedType, findConstructorBinding, generateArguments, getPatternVariablesWhenFalse, getPatternVariablesWhenTrue, isBoxingCompatible, isEmptyBlock, isKnowDeadCodePattern, isValidJavaStatement, promotePatternVariablesIfApplicable, resolveWithPatternVariablesInScope
Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
acceptPotentiallyCompatibleMethods, checkingPotentialCompatibility, checkInvocationArguments, concreteStatement, copyRecordComponentAnnotations, copySE8AnnotationsToType, getRelevantAnnotations, handleNonNullByDefault, isFieldUseDeprecated, isImplicitThis, isMethodUseDeprecated, isSuper, isThis, isType, isTypeUseDeprecated, isUnqualifiedSuper, printAnnotations, printIndent, printModifiers, resolveAnnotations, resolveAnnotations, resolveAnnotations, resolveDeprecatedAnnotations, resolvePolyExpressionArguments, sourceEnd, sourceStart, toString
Von Klasse geerbte Methoden java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.lookup.InvocationSite
acceptPotentiallyCompatibleMethods, checkingPotentialCompatibility, getPatternVariablesWhenTrue, sourceEnd, sourceStart
Von Schnittstelle geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.ast.IPolyExpression
getPolyExpressions, isFunctionalType, isPertinentToApplicability, isPotentiallyCompatibleWith, resolveExpressionExpecting
-
Felddetails
-
receiver
-
selector
public char[] selector -
arguments
-
binding
-
syntheticAccessor
-
expectedType
-
nameSourcePosition
public long nameSourcePosition -
actualReceiverType
-
valueCast
-
typeArguments
-
genericTypeArguments
-
expressionContext
-
argsContainCast
protected boolean argsContainCast -
argumentTypes
-
argumentsHaveErrors
public boolean argumentsHaveErrors -
closeTracker
-
-
Konstruktordetails
-
MessageSend
public MessageSend()
-
-
Methodendetails
-
analyseCode
- Setzt außer Kraft:
analyseCode
in KlasseExpression
-
recordFlowUpdateOnResult
public void recordFlowUpdateOnResult(LocalVariableBinding local, boolean nonNullIfTrue, boolean negatable) -
updateFlowOnBooleanResult
Beschreibung aus Klasse kopiert:Expression
Back-propagation of flow info: before analysing a branch where a given condition is known to hold true/false respectively, ask the condition to contribute its information to the given flowInfo.- Setzt außer Kraft:
updateFlowOnBooleanResult
in KlasseExpression
- Parameter:
flowInfo
- the info to be used for analysing the branchresult
- condition result that would cause entering the branch
-
checkNPE
public boolean checkNPE(BlockScope scope, FlowContext flowContext, FlowInfo flowInfo, int ttlForFieldCheck) Beschreibung aus Klasse kopiert:Expression
Check this expression against potential NPEs, which may occur:- if the expression is the receiver in a field access, qualified allocation, array reference or message send incl. implicit message sends like it happens for the collection in a foreach statement.
- if the expression is subject to unboxing
- if the expression is the exception in a throw statement
- Setzt außer Kraft:
checkNPE
in KlasseExpression
- Parameter:
scope
- the scope of the analysisflowContext
- the current flow contextflowInfo
- the upstream flow info; caveat: may get modifiedttlForFieldCheck
- if this is a reference to a field we will mark that field as nonnull for the specified timeToLive- Gibt zurück:
- could this expression be checked by the current implementation?
-
computeConversion
public void computeConversion(Scope scope, TypeBinding runtimeTimeType, TypeBinding compileTimeType) Beschreibung aus Klasse kopiert:Expression
Base types need that the widening is explicitly done by the compiler using some bytecode like i2f. Also check unsafe type operations.- Setzt außer Kraft:
computeConversion
in KlasseExpression
- Siehe auch:
-
generateCode
MessageSend code generation- Setzt außer Kraft:
generateCode
in KlasseExpression
- Parameter:
currentScope
- org.eclipse.jdt.internal.compiler.lookup.BlockScopecodeStream
- org.eclipse.jdt.internal.compiler.codegen.CodeStreamvalueRequired
- boolean
-
genericTypeArguments
- Angegeben von:
genericTypeArguments
in SchnittstelleInvocationSite
- Siehe auch:
-
isSuperAccess
public boolean isSuperAccess()- Angegeben von:
isSuperAccess
in SchnittstelleInvocationSite
-
isTypeAccess
public boolean isTypeAccess()- Angegeben von:
isTypeAccess
in SchnittstelleInvocationSite
-
manageSyntheticAccessIfNecessary
-
nullStatus
- Setzt außer Kraft:
nullStatus
in KlasseExpression
-
postConversionType
Beschreibung aus Klasse kopiert:Expression
Returns the type of the expression after required implicit conversions. When expression type gets promoted or inserted a generic cast, the converted type will differ from the resolved type (surface side-effects from #computeConversion(...)).- Setzt außer Kraft:
postConversionType
in KlasseExpression
- Gibt zurück:
- the type after implicit conversion
- Siehe auch:
-
printExpression
- Angegeben von:
printExpression
in KlasseExpression
-
resolveType
Beschreibung aus Klasse kopiert:Expression
Resolve the type of this expression in the context of a blockScope- Angegeben von:
resolveType
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
resolveType
in KlasseExpression
- Parameter:
scope
-- Gibt zurück:
- Return the actual type of this expression after resolution
-
findMethodBinding
-
setActualReceiverType
- Angegeben von:
setActualReceiverType
in SchnittstelleInvocationSite
-
setDepth
public void setDepth(int depth) - Angegeben von:
setDepth
in SchnittstelleInvocationSite
-
setExpectedType
Beschreibung aus Klasse kopiert:Expression
Record the type expectation before this expression is typechecked. e.g. String s = foo();, foo() will be tagged as being expected of type String Used to trigger proper inference of generic method invocations.- Angegeben von:
setExpectedType
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
setExpectedType
in KlasseExpression
- Parameter:
expectedType
- The type denoting an expectation in the context of an assignment conversion- Siehe auch:
-
setExpressionContext
- Angegeben von:
setExpressionContext
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
setExpressionContext
in KlasseExpression
-
isPolyExpression
public boolean isPolyExpression()- Angegeben von:
isPolyExpression
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
isPolyExpression
in KlasseExpression
-
isBoxingCompatibleWith
- Angegeben von:
isBoxingCompatibleWith
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
isBoxingCompatibleWith
in KlasseExpression
-
isCompatibleWith
- Angegeben von:
isCompatibleWith
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
isCompatibleWith
in KlasseExpression
-
isPolyExpression
Variant of isPolyExpression() to be used during type inference, when a resolution candidate exists.- Angegeben von:
isPolyExpression
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
isPolyExpression
in KlasseExpression
-
sIsMoreSpecific
- Angegeben von:
sIsMoreSpecific
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
sIsMoreSpecific
in KlasseExpression
-
setFieldIndex
public void setFieldIndex(int depth) - Angegeben von:
setFieldIndex
in SchnittstelleInvocationSite
-
invocationTargetType
Beschreibung aus Klasse kopiert:Statement
Implementation ofInvocationSite.invocationTargetType()
suitable at this level. Subclasses should override as necessary.- Angegeben von:
invocationTargetType
in SchnittstelleInvocationSite
- Angegeben von:
invocationTargetType
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
invocationTargetType
in KlasseStatement
- Siehe auch:
-
traverse
Beschreibung aus Klasse kopiert:Expression
Traverse an expression in the context of a blockScope- Setzt außer Kraft:
traverse
in KlasseExpression
- Parameter:
visitor
-blockScope
-
-
statementExpression
public boolean statementExpression()- Setzt außer Kraft:
statementExpression
in KlasseExpression
-
receiverIsImplicitThis
public boolean receiverIsImplicitThis()- Angegeben von:
receiverIsImplicitThis
in SchnittstelleInvocationSite
- Setzt außer Kraft:
receiverIsImplicitThis
in KlasseASTNode
-
binding
Beschreibung aus Schnittstelle kopiert:Invocation
Answer the resolved method binding of this invocation- Angegeben von:
binding
in SchnittstelleInvocation
-
registerInferenceContext
public void registerInferenceContext(ParameterizedGenericMethodBinding method, InferenceContext18 infCtx18) Beschreibung aus Schnittstelle kopiert:Invocation
Register the given inference context, which produced the given method as its intermediate result. Later when the same method is selected as the most specific method, the inference context for this pair (Invocation x MethodBinding) can be looked up usingInvocation.getInferenceContext(ParameterizedMethodBinding)
to continue the type inference.- Angegeben von:
registerInferenceContext
in SchnittstelleInvocation
-
registerResult
Beschreibung aus Schnittstelle kopiert:Invocation
Record result against target type- Angegeben von:
registerResult
in SchnittstelleInvocation
-
getInferenceContext
Beschreibung aus Schnittstelle kopiert:Invocation
Retrieve an inference context for the given method.- Angegeben von:
getInferenceContext
in SchnittstelleInvocation
- Parameter:
method
- an intermediate resolved candidate for this invocation return the associated inference context.
-
cleanUpInferenceContexts
public void cleanUpInferenceContexts()Beschreibung aus Schnittstelle kopiert:Invocation
Discard any state from type inference when compilation is done.- Angegeben von:
cleanUpInferenceContexts
in SchnittstelleInvocation
-
arguments
- Angegeben von:
arguments
in SchnittstelleInvocation
-
getExpressionContext
- Angegeben von:
getExpressionContext
in SchnittstelleInvocationSite
- Angegeben von:
getExpressionContext
in SchnittstelleIPolyExpression
- Setzt außer Kraft:
getExpressionContext
in KlasseStatement
-
freshInferenceContext
Beschreibung aus Schnittstelle kopiert:InvocationSite
When inference for this invocationSite starts, get a fresh inference context, initialized from this site.- Angegeben von:
freshInferenceContext
in SchnittstelleInvocationSite
-
isQualifiedSuper
public boolean isQualifiedSuper()- Angegeben von:
isQualifiedSuper
in SchnittstelleInvocationSite
- Setzt außer Kraft:
isQualifiedSuper
in KlasseASTNode
-
nameSourceStart
public int nameSourceStart()- Angegeben von:
nameSourceStart
in SchnittstelleInvocationSite
-
nameSourceEnd
public int nameSourceEnd()- Angegeben von:
nameSourceEnd
in SchnittstelleInvocationSite
-
resolveMethodBinding
-