Package org.eclipse.jdt.internal.compiler.ast

Examples of org.eclipse.jdt.internal.compiler.ast.MemberValuePair


  this.identifierLengthPtr--;
  int end = (int) position;
  int start = (int) (position >>> 32);
  Expression value = this.expressionStack[this.expressionPtr--];
  this.expressionLengthPtr--;
  MemberValuePair memberValuePair = new MemberValuePair(simpleName, start, end, value);
  pushOnAstStack(memberValuePair);

  if (this.currentElement != null && this.currentElement instanceof RecoveredAnnotation) {
    RecoveredAnnotation recoveredAnnotation = (RecoveredAnnotation) this.currentElement;
View Full Code Here


    if (this.annotation == null && this.identifierPtr <= parser.identifierPtr) {
      Annotation annot = null;

      boolean needUpdateRParenPos = false;

      MemberValuePair pendingMemberValueName = null;
      if (this.hasPendingMemberValueName && this.identifierPtr < parser.identifierPtr) {
        char[] memberValueName = parser.identifierStack[this.identifierPtr + 1];

        long pos = parser.identifierPositionStack[this.identifierPtr + 1];
        int start = (int) (pos >>> 32);
        int end = (int)pos;
        int valueEnd = this.memberValuPairEqualEnd > -1 ? this.memberValuPairEqualEnd : end;

        SingleNameReference fakeExpression = new SingleNameReference(RecoveryScanner.FAKE_IDENTIFIER, (((long) valueEnd + 1) << 32) + (valueEnd));
        pendingMemberValueName = new MemberValuePair(memberValueName, start, end, fakeExpression);
      }
      parser.identifierPtr = this.identifierPtr;
      parser.identifierLengthPtr = this.identifierLengthPtr;
      TypeReference typeReference = parser.getAnnotationType();

      switch (this.kind) {
        case NORMAL:
          if (parser.astPtr > -1 && parser.astStack[parser.astPtr] instanceof MemberValuePair) {
            MemberValuePair[] memberValuePairs = null;

            int argLength = parser.astLengthStack[parser.astLengthPtr];
            int argStart = parser.astPtr - argLength + 1;

            if (argLength > 0) {
              int annotationEnd;
              if (pendingMemberValueName != null) {
                memberValuePairs = new MemberValuePair[argLength + 1];

                System.arraycopy(parser.astStack, argStart, memberValuePairs, 0, argLength);
                parser.astLengthPtr--;
                parser.astPtr -= argLength;

                memberValuePairs[argLength] = pendingMemberValueName;

                annotationEnd = pendingMemberValueName.sourceEnd;
              } else {
                memberValuePairs = new MemberValuePair[argLength];

                System.arraycopy(parser.astStack, argStart, memberValuePairs, 0, argLength);
                parser.astLengthPtr--;
                parser.astPtr -= argLength;

                MemberValuePair lastMemberValuePair = memberValuePairs[memberValuePairs.length - 1];

                annotationEnd =
                  lastMemberValuePair.value != null
                    ? lastMemberValuePair.value instanceof Annotation
                        ? ((Annotation)lastMemberValuePair.value).declarationSourceEnd
View Full Code Here

  this.identifierLengthPtr--;
  int end = (int) position;
  int start = (int) (position >>> 32);
  Expression value = this.expressionStack[this.expressionPtr--];
  this.expressionLengthPtr--;
  MemberValuePair memberValuePair = new SelectionOnNameOfMemberValuePair(simpleName, start, end, value);
  pushOnAstStack(memberValuePair);

  this.assistNode = memberValuePair;
  this.lastCheckPoint = memberValuePair.sourceEnd + 1;
View Full Code Here

TOP

Related Classes of org.eclipse.jdt.internal.compiler.ast.MemberValuePair

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.