Examples of TextSequence


Examples of org.eclipse.php.internal.core.util.text.TextSequence

          }
          if (startTokenRegion.getType() == PHPRegionTypes.PHP_CURLY_OPEN) {
            // Calculate starting position of the statement (it
            // should go right after this startTokenRegion):
            // startOffset += startTokenRegion.getEnd();
            TextSequence statementText1 = getStatementText(startOffset
                + startTokenRegion.getStart() - 1);
            startTokenRegion = phpScriptRegion
                .getPhpToken(startTokenRegion.getStart()
                    - statementText1.length());
            if (startTokenRegion != null
                && startTokenRegion.getType() == PHPRegionTypes.PHP_USE) {
              String[] types = statementText1.toString().trim()
                  .substring(3).trim().split(","); //$NON-NLS-1$
              useTypes = new ArrayList<String>();
              for (String type : types) {
                useTypes.add(type.trim());
              }
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

    return getTriggerChar() == ':';
  }

  @Override
  protected char getTriggerChar() {
    TextSequence statementText = getStatementText();
    int functionEnd = getFunctionEnd();

    // are we inside parameters part in function declaration statement
    for (int i = statementText.length() - 1; i >= functionEnd; i--) {
      if (statementText.charAt(i) == '(') {
        int j = statementText.length() - 1;
        for (; j > i; j--) {
          char charAt = statementText.charAt(j);
          char charAtBefore = 0;
          if (j > i + 1) {
            charAtBefore = statementText.charAt(j);
          }
          if (charAt == ':' && charAtBefore == ':') {
            return charAt;
          }
        }
        return statementText.charAt(i);
      }
    }
    return 0;
  }
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

    int elementStart = getElementStart();
    int lhsIndex = elementStart - "$this".length() //$NON-NLS-1$
        - getTriggerType().getName().length();
    if (lhsIndex >= 0) {
      TextSequence statementText = getStatementText();
      String parentText = statementText.subSequence(lhsIndex,
          elementStart - getTriggerType().getName().length())
          .toString();
      if (parentText.equals("$this")) { //$NON-NLS-1$
        isThis = isDirectThis = true;
      }
    }

    if (!isThis) {
      lhsIndex = elementStart - "$parent".length() //$NON-NLS-1$
          - getTriggerType().getName().length();
      if (lhsIndex >= 0) {
        TextSequence statementText = getStatementText();
        String parentText = statementText.subSequence(lhsIndex,
            elementStart - getTriggerType().getName().length())
            .toString();
        if (parentText.equals("$parent")) { //$NON-NLS-1$
          isParent = true;
        }
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

      return false;
    }

    try {
      if (useTrait) {
        TextSequence statementText = getStatementText();
        if (statementText.toString().indexOf('{') < 0
            && statementText.toString().indexOf('}') < 0) {
          return true;
        }
      } else {
        String previousWord = getPreviousWord();
        if ("use".equalsIgnoreCase(previousWord)) { //$NON-NLS-1$
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

   *
   * @return
   */
  protected char getTriggerChar() {

    TextSequence statementText = getStatementText();
    int functionEnd = getFunctionEnd();

    // are we inside parameters part in function declaration statement
    for (int i = statementText.length() - 1; i >= functionEnd; i--) {
      if (statementText.charAt(i) == '(') {
        int j = statementText.length() - 1;
        for (; j > i; j--) {
          char charAt = statementText.charAt(j);
          char charAtBefore = 0;
          if (j > i + 1) {
            charAtBefore = statementText.charAt(j);
          }
          if (charAt == '$' || charAt == '=' || charAt == ','
              || (charAt == ':' && charAtBefore == ':')) {
            return charAt;
          }
        }
        return statementText.charAt(i);
      }
    }
    return 0;
  }
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

      CompletionRequestor requestor) {
    if (!super.isValid(sourceModule, offset, requestor)) {
      return false;
    }

    TextSequence statementText = getStatementText();
    functionEnd = PHPTextSequenceUtilities
        .isInFunctionDeclaration(statementText);
    if (functionEnd == -1) {
      return false;
    }
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

      return false;
    }

    try {
      if (useTrait) {
        TextSequence statementText = getStatementText();
        if (statementText.toString().indexOf('{') >= 0
            || statementText.toString().indexOf('}') >= 0) {
          return false;
        }
      } else {
        String previousWord = getPreviousWord();
        if (!"use".equalsIgnoreCase(previousWord)) { //$NON-NLS-1$
          return false;
        }
      }
    } catch (BadLocationException e) {
      PHPCorePlugin.log(e);
    }
    if (getPhpVersion().isLessThan(PHPVersion.PHP5_3)) {
      return false;
    }

    TextSequence statementText = getStatementText();
    int totalLength = statementText.length();
    int endPosition = PHPTextSequenceUtilities.readBackwardSpaces(
        statementText, totalLength); // read whitespace
    elementStart = PHPTextSequenceUtilities.readIdentifierStartIndex(
        statementText, endPosition, true);

    elementStart = PHPTextSequenceUtilities.readBackwardSpaces(
        statementText, elementStart);
    if (elementStart < 1) { // there's no trigger of length less than 1
                // characters
      return false;
    }

    String triggerText = statementText.subSequence(elementStart - 1,
        elementStart).toString();
    if (!triggerText.equals("\\")) { //$NON-NLS-1$
      return false;
    }

    isGlobal = false;
    if (elementStart == 1) {
      isGlobal = true;
      return true;
    }

    int endNamespace = PHPTextSequenceUtilities.readBackwardSpaces(
        statementText, elementStart - 1);
    int nsNameStart = PHPTextSequenceUtilities.readNamespaceStartIndex(
        statementText, endNamespace, false);
    String nsName = statementText.subSequence(nsNameStart, elementStart)
        .toString();
    if (nsName.indexOf('\\') < 0) {
      return false;
    }
    if (!nsName.startsWith("\\")) { //$NON-NLS-1$
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

  public String getPrefix() throws BadLocationException {
    if (hasWhitespaceBeforeCursor()) {
      return ""; //$NON-NLS-1$
    }
    TextSequence statementText = getStatementText();
    int statementLength = statementText.length();
    int prefixEnd = PHPTextSequenceUtilities.readBackwardSpaces(
        statementText, statementLength); // read whitespace
    int prefixStart = PHPTextSequenceUtilities.readIdentifierStartIndex(
        statementText, prefixEnd, true);
    return statementText.subSequence(prefixStart, prefixEnd).toString();
  }
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

      CompletionRequestor requestor) {
    if (!super.isValid(sourceModule, offset, requestor)) {
      return false;
    }

    TextSequence statementText = getStatementText();
    // boolean b = isInUseTraitStatement();
    // if (b) {
    // return false;
    // }
    // TextSequence statementText1 = getStatementText(statementText
    // .getOriginalOffset(0) - 2);
    // statementText1.toString();
    int totalLength = statementText.length();
    elementStart = PHPTextSequenceUtilities.readBackwardSpaces(
        statementText, totalLength);
    elementStart = PHPTextSequenceUtilities.readIdentifierStartIndex(
        statementText, elementStart, true);
    elementStart = PHPTextSequenceUtilities.readBackwardSpaces(
        statementText, elementStart);
    if (elementStart <= 2) { // there's no trigger of length less than 2
      // characters
      return false;
    }

    String triggerText = statementText.subSequence(elementStart - 2,
        elementStart).toString();
    if (triggerText.equals("->")) { //$NON-NLS-1$
      triggerType = Trigger.OBJECT;
    } else if (triggerText.equals("::")) { //$NON-NLS-1$
      triggerType = Trigger.CLASS;
View Full Code Here

Examples of org.eclipse.php.internal.core.util.text.TextSequence

      CompletionRequestor requestor) {
    if (!super.isValid(sourceModule, offset, requestor)) {
      return false;
    }
    setPatterns(sourceModule.getScriptProject().getProject());
    TextSequence statementText = getStatementText();

    int tagEnd = statementText.length(), tagStart;
    boolean found = false;
    do {
      tagEnd = PHPTextSequenceUtilities.readBackwardSpaces(statementText,
          tagEnd);
      tagStart = PHPTextSequenceUtilities.readIdentifierStartIndex(
          getPhpVersion(), getStatementText(), tagEnd, true);

      tagName = statementText.subSequence(tagStart, tagEnd).toString();

      if (tagStart > 0 && statementText.charAt(tagStart - 1) == '@') {
        found = true;
      } else if (isPHPTag(tagName)) {
        found = true;
      }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.