org.mozilla.javascript.Parser.assignExpr()方法的使用及代码示例

x33g5p2x  于2022-01-26 转载在 JavaScript  
字(8.5k)|赞(0)|评价(0)|浏览(157)

本文整理了Java中org.mozilla.javascript.Parser.assignExpr()方法的一些代码示例,展示了Parser.assignExpr()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Parser.assignExpr()方法的具体详情如下:
包路径:org.mozilla.javascript.Parser
类名称:Parser
方法名:assignExpr

Parser.assignExpr介绍

暂无

代码示例

代码示例来源:origin: com.yahoo/yuicompressor

private Node expr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = assignExpr(inForInit);
  while (matchToken(Token.COMMA)) {
    decompiler.addToken(Token.COMMA);
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "");
    pn = nf.createBinary(Token.COMMA, pn, assignExpr(inForInit));
  }
  return pn;
}

代码示例来源:origin: com.sun.phobos/phobos-rhino

private Node condExpr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = orExpr(inForInit);
  if (matchToken(Token.HOOK)) {
    decompiler.addToken(Token.HOOK);
    Node ifTrue = assignExpr(false);
    mustMatchToken(Token.COLON, "msg.no.colon.cond");
    decompiler.addToken(Token.COLON);
    Node ifFalse = assignExpr(inForInit);
    return nf.createCondExpr(pn, ifTrue, ifFalse);
  }
  return pn;
}

代码示例来源:origin: com.sun.phobos/phobos-rhino

private Node expr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = assignExpr(inForInit);
  while (matchToken(Token.COMMA)) {
    decompiler.addToken(Token.COMMA);
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "");
    pn = nf.createBinary(Token.COMMA, pn, assignExpr(inForInit));
  }
  return pn;
}

代码示例来源:origin: rhino/js

private Node condExpr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = orExpr(inForInit);
  if (matchToken(Token.HOOK)) {
    decompiler.addToken(Token.HOOK);
    Node ifTrue = assignExpr(false);
    mustMatchToken(Token.COLON, "msg.no.colon.cond");
    decompiler.addToken(Token.COLON);
    Node ifFalse = assignExpr(inForInit);
    return nf.createCondExpr(pn, ifTrue, ifFalse);
  }
  return pn;
}

代码示例来源:origin: com.yahoo/yuicompressor

private Node condExpr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = orExpr(inForInit);
  if (matchToken(Token.HOOK)) {
    decompiler.addToken(Token.HOOK);
    Node ifTrue = assignExpr(false);
    mustMatchToken(Token.COLON, "msg.no.colon.cond");
    decompiler.addToken(Token.COLON);
    Node ifFalse = assignExpr(inForInit);
    return nf.createCondExpr(pn, ifTrue, ifFalse);
  }
  return pn;
}

代码示例来源:origin: rhino/js

private void plainProperty(ObjArray elems, Object property)
    throws IOException {
  mustMatchToken(Token.COLON, "msg.no.colon.prop");
  // OBJLIT is used as ':' in object literal for
  // decompilation to solve spacing ambiguity.
  decompiler.addToken(Token.OBJECTLIT);
  elems.add(property);
  elems.add(assignExpr(false));
}

代码示例来源:origin: com.yahoo/yuicompressor

private void plainProperty(ObjArray elems, Object property)
    throws IOException {
  mustMatchToken(Token.COLON, "msg.no.colon.prop");
  // OBJLIT is used as ':' in object literal for
  // decompilation to solve spacing ambiguity.
  decompiler.addToken(Token.OBJECTLIT);
  elems.add(property);
  elems.add(assignExpr(false));
}

代码示例来源:origin: com.sun.phobos/phobos-rhino

private void plainProperty(ObjArray elems, Object property)
    throws IOException {
  mustMatchToken(Token.COLON, "msg.no.colon.prop");
  // OBJLIT is used as ':' in object literal for
  // decompilation to solve spacing ambiguity.
  decompiler.addToken(Token.OBJECTLIT);
  elems.add(property);
  elems.add(assignExpr(false));
}

代码示例来源:origin: rhino/js

private Node expr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = assignExpr(inForInit);
  while (matchToken(Token.COMMA)) {
    decompiler.addToken(Token.COMMA);
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "");
    if (peekToken() == Token.YIELD) {
     reportError("msg.yield.parenthesized");
    }
    pn = nf.createBinary(Token.COMMA, pn, assignExpr(inForInit));
  }
  return pn;
}

代码示例来源:origin: ro.isdc.wro4j/rhino

private AstNode expr()
  throws IOException
{
  AstNode pn = assignExpr();
  int pos = pn.getPosition();
  while (matchToken(Token.COMMA)) {
    int opPos = ts.tokenBeg;
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "",
               pos, nodeEnd(pn) - pos);
    if (peekToken() == Token.YIELD)
      reportError("msg.yield.parenthesized");
    pn = new InfixExpression(Token.COMMA, pn, assignExpr(), opPos);
  }
  return pn;
}

代码示例来源:origin: com.yahoo/yuicompressor

private Node assignExpr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = condExpr(inForInit);
  int tt = peekToken();
  if (Token.FIRST_ASSIGN <= tt && tt <= Token.LAST_ASSIGN) {
    consumeToken();
    decompiler.addToken(tt);
    pn = nf.createAssignment(tt, pn, assignExpr(inForInit));
  }
  return pn;
}

代码示例来源:origin: com.sun.phobos/phobos-rhino

private Node assignExpr(boolean inForInit)
  throws IOException, ParserException
{
  Node pn = condExpr(inForInit);
  int tt = peekToken();
  if (Token.FIRST_ASSIGN <= tt && tt <= Token.LAST_ASSIGN) {
    consumeToken();
    decompiler.addToken(tt);
    pn = nf.createAssignment(tt, pn, assignExpr(inForInit));
  }
  return pn;
}

代码示例来源:origin: com.github.tntim96/rhino

private AstNode expr()
  throws IOException
{
  AstNode pn = assignExpr();
  int pos = pn.getPosition();
  while (matchToken(Token.COMMA)) {
    int opPos = ts.tokenBeg;
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "",
               pos, nodeEnd(pn) - pos);
    if (peekToken() == Token.YIELD)
      reportError("msg.yield.parenthesized");
    pn = new InfixExpression(Token.COMMA, pn, assignExpr(), opPos);
  }
  return pn;
}

代码示例来源:origin: geogebra/geogebra

private AstNode expr()
  throws IOException
{
  AstNode pn = assignExpr();
  int pos = pn.getPosition();
  while (matchToken(Token.COMMA)) {
    int opPos = ts.tokenBeg;
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "",
               pos, nodeEnd(pn) - pos);
    if (peekToken() == Token.YIELD)
      reportError("msg.yield.parenthesized");
    pn = new InfixExpression(Token.COMMA, pn, assignExpr(), opPos);
  }
  return pn;
}

代码示例来源:origin: io.apigee/rhino

private AstNode expr()
  throws IOException
{
  AstNode pn = assignExpr();
  int pos = pn.getPosition();
  while (matchToken(Token.COMMA)) {
    int opPos = ts.tokenBeg;
    if (compilerEnv.isStrictMode() && !pn.hasSideEffects())
      addStrictWarning("msg.no.side.effects", "",
               pos, nodeEnd(pn) - pos);
    if (peekToken() == Token.YIELD)
      reportError("msg.yield.parenthesized");
    pn = new InfixExpression(Token.COMMA, pn, assignExpr(), opPos);
  }
  return pn;
}

代码示例来源:origin: com.sun.phobos/phobos-rhino

private void argumentList(Node listNode)
  throws IOException, ParserException
{
  boolean matched;
  matched = matchToken(Token.RP);
  if (!matched) {
    boolean first = true;
    do {
      if (!first)
        decompiler.addToken(Token.COMMA);
      first = false;
      nf.addChildToBack(listNode, assignExpr(false));
    } while (matchToken(Token.COMMA));
    mustMatchToken(Token.RP, "msg.no.paren.arg");
  }
  decompiler.addToken(Token.RP);
}

代码示例来源:origin: com.yahoo/yuicompressor

private void argumentList(Node listNode)
  throws IOException, ParserException
{
  boolean matched;
  matched = matchToken(Token.RP);
  if (!matched) {
    boolean first = true;
    do {
      if (!first)
        decompiler.addToken(Token.COMMA);
      first = false;
      nf.addChildToBack(listNode, assignExpr(false));
    } while (matchToken(Token.COMMA));
    mustMatchToken(Token.RP, "msg.no.paren.arg");
  }
  decompiler.addToken(Token.RP);
}

代码示例来源:origin: rhino/js

private Node assignExpr(boolean inForInit)
  throws IOException, ParserException
{
  int tt = peekToken();
  if (tt == Token.YIELD) {
    consumeToken();
    return returnOrYield(tt, true);
  }
  Node pn = condExpr(inForInit);
  tt = peekToken();
  if (Token.FIRST_ASSIGN <= tt && tt <= Token.LAST_ASSIGN) {
    consumeToken();
    decompiler.addToken(tt);
    pn = nf.createAssignment(tt, pn, assignExpr(inForInit));
  }
  return pn;
}

代码示例来源:origin: rhino/js

private void argumentList(Node listNode)
  throws IOException, ParserException
{
  boolean matched;
  matched = matchToken(Token.RP);
  if (!matched) {
    boolean first = true;
    do {
      if (!first)
        decompiler.addToken(Token.COMMA);
      first = false;
      if (peekToken() == Token.YIELD) {
        reportError("msg.yield.parenthesized");
      }
      nf.addChildToBack(listNode, assignExpr(false));
    } while (matchToken(Token.COMMA));
    mustMatchToken(Token.RP, "msg.no.paren.arg");
  }
  decompiler.addToken(Token.RP);
}

代码示例来源:origin: geogebra/geogebra

private AstNode assignExpr()
  throws IOException
{
  int tt = peekToken();
  if (tt == Token.YIELD) {
    return returnOrYield(tt, true);
  }
  AstNode pn = condExpr();
  tt = peekToken();
  if (Token.FIRST_ASSIGN <= tt && tt <= Token.LAST_ASSIGN) {
    consumeToken();
    // Pull out JSDoc info and reset it before recursing.
    Comment jsdocNode = getAndResetJsDoc();
    markDestructuring(pn);
    int opPos = ts.tokenBeg;
    pn = new Assignment(tt, pn, assignExpr(), opPos);
    if (jsdocNode != null) {
      pn.setJsDocNode(jsdocNode);
    }
  } else if (tt == Token.SEMI) {
    // This may be dead code added intentionally, for JSDoc purposes.
    // For example: /** @type Number */ C.prototype.x;
    if (currentJsDocComment != null) {
      pn.setJsDocNode(getAndResetJsDoc());
    }
  }
  return pn;
}

相关文章

微信公众号

Parser类方法