当前位置: 首页>>代码示例>>Java>>正文


Java Builder类代码示例

本文整理汇总了Java中com.google.javascript.jscomp.JsMessage.Builder的典型用法代码示例。如果您正苦于以下问题:Java Builder类的具体用法?Java Builder怎么用?Java Builder使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


Builder类属于com.google.javascript.jscomp.JsMessage包,在下文中一共展示了Builder类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: maybeInitMetaDataFromJsDocOrHelpVar

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a JsMessage by examining the nodes just before
 * and after a message VAR node.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param varNode the message VAR node
 * @param parentOfVarNode {@code varNode}'s parent node
 */
private void maybeInitMetaDataFromJsDocOrHelpVar(
    Builder builder, Node varNode, @Nullable Node parentOfVarNode)
    throws MalformedException {

  // First check description in @desc
  if (maybeInitMetaDataFromJsDoc(builder, varNode)) {
    return;
  }

  // Check the preceding node for meta data
  if ((parentOfVarNode != null) &&
      maybeInitMetaDataFromHelpVar(builder,
          parentOfVarNode.getChildBefore(varNode))) {
    return;
  }

  // Check the subsequent node for meta data
  maybeInitMetaDataFromHelpVar(builder, varNode.getNext());
}
 
开发者ID:ehsan,项目名称:js-symbolic-executor,代码行数:28,代码来源:JsMessageVisitor.java

示例2: maybeInitMetaDataFromHelpVar

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a JsMessage by examining a node just before or
 * after a message VAR node.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param sibling a node adjacent to the message VAR node
 * @return true iff message has corresponding description variable
 */
private boolean maybeInitMetaDataFromHelpVar(Builder builder,
    @Nullable Node sibling) throws MalformedException {
  if ((sibling != null) && (sibling.getType() == Token.VAR)) {
    Node nameNode = sibling.getFirstChild();
    String name = nameNode.getString();
    if (name.equals(builder.getKey() + DESC_SUFFIX)) {
      Node valueNode = nameNode.getFirstChild();
      String desc = extractStringFromStringExprNode(valueNode);
      if (desc.startsWith(HIDDEN_DESC_PREFIX)) {
        builder.setDesc(desc.substring(HIDDEN_DESC_PREFIX.length()).trim());
        builder.setIsHidden(true);
      } else {
        builder.setDesc(desc);
      }
      return true;
    }
  }
  return false;
}
 
开发者ID:ehsan,项目名称:js-symbolic-executor,代码行数:28,代码来源:JsMessageVisitor.java

示例3: maybeInitMetaDataFromJsDoc

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a message builder given a node that may
 * contain JsDoc properties.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param node the node with the message's JSDoc properties
 * @return true if message has JsDoc with valid description in @desc
 *         annotation
 */
private boolean maybeInitMetaDataFromJsDoc(Builder builder, Node node) {
  boolean messageHasDesc = false;
  JSDocInfo info = node.getJSDocInfo();
  if (info != null) {
    String desc = info.getDescription();
    if (desc != null) {
      builder.setDesc(desc);
      messageHasDesc = true;
    }
    if (info.isHidden()) {
      builder.setIsHidden(true);
    }
  }

  return messageHasDesc;
}
 
开发者ID:ehsan,项目名称:js-symbolic-executor,代码行数:26,代码来源:JsMessageVisitor.java

示例4: extractFromReturnDescendant

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Appends value parts to the message builder by traversing the descendants
 * of the given RETURN node.
 *
 * @param builder the message builder
 * @param node the node from where we extract a message
 * @throws MalformedException if the parsed message is invalid
 */
private void extractFromReturnDescendant(Builder builder, Node node)
    throws MalformedException {

  switch (node.getType()) {
    case Token.STRING:
      builder.appendStringPart(node.getString());
      break;
    case Token.NAME:
      builder.appendPlaceholderReference(node.getString());
      break;
    case Token.ADD:
      for (Node child : node.children()) {
        extractFromReturnDescendant(builder, child);
      }
      break;
    default:
      throw new MalformedException(
          "STRING, NAME, or ADD node expected; found: "
              + getReadableTokenName(node), node);
  }
}
 
开发者ID:ehsan,项目名称:js-symbolic-executor,代码行数:30,代码来源:JsMessageVisitor.java

示例5: maybeInitMetaDataFromHelpVar

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a JsMessage by examining a node just before or
 * after a message VAR node.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param sibling a node adjacent to the message VAR node
 * @return true iff message has corresponding description variable
 */
private boolean maybeInitMetaDataFromHelpVar(Builder builder,
    @Nullable Node sibling) throws MalformedException {
  if ((sibling != null) && (sibling.isVar())) {
    Node nameNode = sibling.getFirstChild();
    String name = nameNode.getString();
    if (name.equals(builder.getKey() + DESC_SUFFIX)) {
      Node valueNode = nameNode.getFirstChild();
      String desc = extractStringFromStringExprNode(valueNode);
      if (desc.startsWith(HIDDEN_DESC_PREFIX)) {
        builder.setDesc(desc.substring(HIDDEN_DESC_PREFIX.length()).trim());
        builder.setIsHidden(true);
      } else {
        builder.setDesc(desc);
      }
      return true;
    }
  }
  return false;
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:28,代码来源:JsMessageVisitor.java

示例6: maybeInitMetaDataFromJsDoc

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a message builder given a node that may
 * contain JsDoc properties.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param node the node with the message's JSDoc properties
 * @return true if message has JsDoc with valid description in @desc
 *         annotation
 */
private boolean maybeInitMetaDataFromJsDoc(Builder builder, Node node) {
  boolean messageHasDesc = false;
  JSDocInfo info = node.getJSDocInfo();
  if (info != null) {
    String desc = info.getDescription();
    if (desc != null) {
      builder.setDesc(desc);
      messageHasDesc = true;
    }
    if (info.isHidden()) {
      builder.setIsHidden(true);
    }
    if (info.getMeaning() != null) {
      builder.setMeaning(info.getMeaning());
    }
  }

  return messageHasDesc;
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:29,代码来源:JsMessageVisitor.java

示例7: maybeInitMetaDataFromJsDocOrHelpVar

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a JsMessage by examining the nodes just before
 * and after a message VAR node.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param varNode the message VAR node
 * @param parentOfVarNode {@code varNode}'s parent node
 */
private void maybeInitMetaDataFromJsDocOrHelpVar(
    Builder builder, Node varNode, @Nullable Node parentOfVarNode)
    throws MalformedException {

  // First check description in @desc
  if (maybeInitMetaDataFromJsDoc(builder, varNode)) {
    return;
  }

  // Check the preceding node for meta data
  if ((parentOfVarNode != null)
      && maybeInitMetaDataFromHelpVar(builder, varNode.getPrevious())) {
    return;
  }

  // Check the subsequent node for meta data
  maybeInitMetaDataFromHelpVar(builder, varNode.getNext());
}
 
开发者ID:google,项目名称:closure-compiler,代码行数:27,代码来源:JsMessageVisitor.java

示例8: maybeInitMetaDataFromHelpVar

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a JsMessage by examining a node just before or
 * after a message VAR node.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param sibling a node adjacent to the message VAR node
 * @return true iff message has corresponding description variable
 */
private static boolean maybeInitMetaDataFromHelpVar(Builder builder,
    @Nullable Node sibling) throws MalformedException {
  if ((sibling != null) && (sibling.isVar())) {
    Node nameNode = sibling.getFirstChild();
    String name = nameNode.getString();
    if (name.equals(builder.getKey() + DESC_SUFFIX)) {
      Node valueNode = nameNode.getFirstChild();
      String desc = extractStringFromStringExprNode(valueNode);
      if (desc.startsWith(HIDDEN_DESC_PREFIX)) {
        builder.setDesc(desc.substring(HIDDEN_DESC_PREFIX.length()).trim());
        builder.setIsHidden(true);
      } else {
        builder.setDesc(desc);
      }
      return true;
    }
  }
  return false;
}
 
开发者ID:google,项目名称:closure-compiler,代码行数:28,代码来源:JsMessageVisitor.java

示例9: maybeInitMetaDataFromJsDoc

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Initializes the meta data in a message builder given a node that may
 * contain JsDoc properties.
 *
 * @param builder the message builder whose meta data will be initialized
 * @param node the node with the message's JSDoc properties
 * @return true if message has JsDoc with valid description in @desc
 *         annotation
 */
private static boolean maybeInitMetaDataFromJsDoc(Builder builder, Node node) {
  boolean messageHasDesc = false;
  JSDocInfo info = node.getJSDocInfo();
  if (info != null) {
    String desc = info.getDescription();
    if (desc != null) {
      builder.setDesc(desc);
      messageHasDesc = true;
    }
    if (info.isHidden()) {
      builder.setIsHidden(true);
    }
    if (info.getMeaning() != null) {
      builder.setMeaning(info.getMeaning());
    }
  }

  return messageHasDesc;
}
 
开发者ID:google,项目名称:closure-compiler,代码行数:29,代码来源:JsMessageVisitor.java

示例10: extractFromReturnDescendant

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Appends value parts to the message builder by traversing the descendants
 * of the given RETURN node.
 *
 * @param builder the message builder
 * @param node the node from where we extract a message
 * @throws MalformedException if the parsed message is invalid
 */
private static void extractFromReturnDescendant(Builder builder, Node node)
    throws MalformedException {

  switch (node.getToken()) {
    case STRING:
      builder.appendStringPart(node.getString());
      break;
    case NAME:
      builder.appendPlaceholderReference(node.getString());
      break;
    case ADD:
      for (Node child : node.children()) {
        extractFromReturnDescendant(builder, child);
      }
      break;
    default:
      throw new MalformedException(
          "STRING, NAME, or ADD node expected; found: " + node.getToken(), node);
  }
}
 
开发者ID:google,项目名称:closure-compiler,代码行数:29,代码来源:JsMessageVisitor.java

示例11: extractFromReturnDescendant

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Appends value parts to the message builder by traversing the descendants
 * of the given RETURN node.
 *
 * @param builder the message builder
 * @param node the node from where we extract a message
 * @throws MalformedException if the parsed message is invalid
 */
private static void extractFromReturnDescendant(Builder builder, Node node)
    throws MalformedException {

  switch (node.getType()) {
    case Token.STRING:
      builder.appendStringPart(node.getString());
      break;
    case Token.NAME:
      builder.appendPlaceholderReference(node.getString());
      break;
    case Token.ADD:
      for (Node child : node.children()) {
        extractFromReturnDescendant(builder, child);
      }
      break;
    default:
      throw new MalformedException(
          "STRING, NAME, or ADD node expected; found: "
              + getReadableTokenName(node), node);
  }
}
 
开发者ID:nicks,项目名称:closure-compiler-old,代码行数:30,代码来源:JsMessageVisitor.java

示例12: extractMessageFromVariable

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Creates a {@link JsMessage} for a js message defined using a js variable
 * declaration (e.g <code>var MSG_X = ...;</code>).
 *
 * @param builder the message builder
 * @param nameNode a NAME node for a js message variable
 * @param parentNode a VAR node, parent of {@code nameNode}
 * @param grandParentNode the grandparent of {@code nameNode}. This node is
 *        only used to get meta data about the message that might be
 *        surrounding it (e.g. a message description). This argument may be
 *        null if the meta data is not needed.
 * @throws MalformedException if {@code varNode} does not
 *         correspond to a valid js message VAR node
 */
private void extractMessageFromVariable(
    Builder builder, Node nameNode, Node parentNode,
    @Nullable Node grandParentNode) throws MalformedException {

  // Determine the message's value
  Node valueNode = nameNode.getFirstChild();
  switch (valueNode.getType()) {
    case Token.STRING:
    case Token.ADD:
      maybeInitMetaDataFromJsDocOrHelpVar(builder, parentNode,
          grandParentNode);
      builder.appendStringPart(extractStringFromStringExprNode(valueNode));
      break;
    case Token.FUNCTION:
      maybeInitMetaDataFromJsDocOrHelpVar(builder, parentNode,
          grandParentNode);
      extractFromFunctionNode(builder, valueNode);
      break;
    case Token.CALL:
      maybeInitMetaDataFromJsDoc(builder, parentNode);
      extractFromCallNode(builder, valueNode);
      break;
    default:
      throw new MalformedException("Cannot parse value of message "
          + builder.getKey(), valueNode);
  }
}
 
开发者ID:ehsan,项目名称:js-symbolic-executor,代码行数:42,代码来源:JsMessageVisitor.java

示例13: parseMessageTextNode

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Appends the message parts in a JS message value extracted from the given
 * text node.
 *
 * @param builder the js message builder to append parts to
 * @param node the node with string literal that contains the message text
 * @throws MalformedException if {@code value} contains a reference to
 *         an unregistered placeholder
 */
private void parseMessageTextNode(Builder builder, Node node)
    throws MalformedException {
  String value = extractStringFromStringExprNode(node);

  while(true) {
    int phBegin = value.indexOf(PH_JS_PREFIX);
    if (phBegin < 0) {
      // Just a string literal
      builder.appendStringPart(value);
      return;
    } else {
      if (phBegin > 0) {
        // A string literal followed by a placeholder
        builder.appendStringPart(value.substring(0, phBegin));
      }

      // A placeholder. Find where it ends
      int phEnd = value.indexOf(PH_JS_SUFFIX, phBegin);
      if (phEnd < 0) {
        throw new MalformedException(
            "Placeholder incorrectly formatted in: " + builder.getKey(),
            node);
      }

      String phName = value.substring(phBegin + PH_JS_PREFIX.length(),
          phEnd);
      builder.appendPlaceholderReference(phName);
      int nextPos = phEnd + PH_JS_SUFFIX.length();
      if (nextPos < value.length()) {
        // Iterate on the rest of the message value
        value = value.substring(nextPos);
      } else {
        // The message is parsed
        return;
      }
    }
  }
}
 
开发者ID:ehsan,项目名称:js-symbolic-executor,代码行数:48,代码来源:JsMessageVisitor.java

示例14: extractMessageFromVariable

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Creates a {@link JsMessage} for a JS message defined using a JS variable
 * declaration (e.g <code>var MSG_X = ...;</code>).
 *
 * @param builder the message builder
 * @param nameNode a NAME node for a JS message variable
 * @param parentNode a VAR node, parent of {@code nameNode}
 * @param grandParentNode the grandparent of {@code nameNode}. This node is
 *        only used to get meta data about the message that might be
 *        surrounding it (e.g. a message description). This argument may be
 *        null if the meta data is not needed.
 * @throws MalformedException if {@code varNode} does not
 *         correspond to a valid JS message VAR node
 */
private void extractMessageFromVariable(
    Builder builder, Node nameNode, Node parentNode,
    @Nullable Node grandParentNode) throws MalformedException {

  // Determine the message's value
  Node valueNode = nameNode.getFirstChild();
  switch (valueNode.getType()) {
    case Token.STRING:
    case Token.ADD:
      maybeInitMetaDataFromJsDocOrHelpVar(builder, parentNode,
          grandParentNode);
      builder.appendStringPart(extractStringFromStringExprNode(valueNode));
      break;
    case Token.FUNCTION:
      maybeInitMetaDataFromJsDocOrHelpVar(builder, parentNode,
          grandParentNode);
      extractFromFunctionNode(builder, valueNode);
      break;
    case Token.CALL:
      maybeInitMetaDataFromJsDoc(builder, parentNode);
      extractFromCallNode(builder, valueNode);
      break;
    default:
      throw new MalformedException("Cannot parse value of message "
          + builder.getKey(), valueNode);
  }
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:42,代码来源:JsMessageVisitor.java

示例15: parseMessageTextNode

import com.google.javascript.jscomp.JsMessage.Builder; //导入依赖的package包/类
/**
 * Appends the message parts in a JS message value extracted from the given
 * text node.
 *
 * @param builder the JS message builder to append parts to
 * @param node the node with string literal that contains the message text
 * @throws MalformedException if {@code value} contains a reference to
 *         an unregistered placeholder
 */
private void parseMessageTextNode(Builder builder, Node node)
    throws MalformedException {
  String value = extractStringFromStringExprNode(node);

  while(true) {
    int phBegin = value.indexOf(PH_JS_PREFIX);
    if (phBegin < 0) {
      // Just a string literal
      builder.appendStringPart(value);
      return;
    } else {
      if (phBegin > 0) {
        // A string literal followed by a placeholder
        builder.appendStringPart(value.substring(0, phBegin));
      }

      // A placeholder. Find where it ends
      int phEnd = value.indexOf(PH_JS_SUFFIX, phBegin);
      if (phEnd < 0) {
        throw new MalformedException(
            "Placeholder incorrectly formatted in: " + builder.getKey(),
            node);
      }

      String phName = value.substring(phBegin + PH_JS_PREFIX.length(),
          phEnd);
      builder.appendPlaceholderReference(phName);
      int nextPos = phEnd + PH_JS_SUFFIX.length();
      if (nextPos < value.length()) {
        // Iterate on the rest of the message value
        value = value.substring(nextPos);
      } else {
        // The message is parsed
        return;
      }
    }
  }
}
 
开发者ID:SpoonLabs,项目名称:astor,代码行数:48,代码来源:JsMessageVisitor.java


注:本文中的com.google.javascript.jscomp.JsMessage.Builder类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。