本文整理了Java中org.mozilla.javascript.ast.UnaryExpression.getType()
方法的一些代码示例,展示了UnaryExpression.getType()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。UnaryExpression.getType()
方法的具体详情如下:
包路径:org.mozilla.javascript.ast.UnaryExpression
类名称:UnaryExpression
方法名:getType
暂无
代码示例来源:origin: konsoletyper/teavm
private void printUnary(UnaryExpression node, int precedence) throws IOException {
int innerPrecedence = node.isPostfix() ? PRECEDENCE_POSTFIX : PRECEDENCE_PREFIX;
if (innerPrecedence > precedence) {
writer.append('(');
}
if (!node.isPostfix()) {
String op = AstNode.operatorToString(node.getType());
if (op.startsWith("-")) {
writer.append(' ');
}
writer.append(op);
if (requiresWhitespaces(node.getType())) {
writer.append(' ');
}
}
print(node.getOperand(), innerPrecedence);
if (node.isPostfix()) {
writer.append(AstNode.operatorToString(node.getType()));
}
if (innerPrecedence > precedence) {
writer.append(')');
}
}
代码示例来源:origin: com.github.tntim96/rhino
@Override
public String toSource(int depth) {
StringBuilder sb = new StringBuilder();
sb.append(makeIndent(depth));
int type = getType();
if (!isPostfix) {
sb.append(operatorToString(type));
if (type == Token.TYPEOF || type == Token.DELPROP || type == Token.VOID) {
sb.append(" ");
}
}
sb.append(operand.toSource());
if (isPostfix) {
sb.append(operatorToString(type));
}
return sb.toString();
}
代码示例来源:origin: io.apigee/rhino
@Override
public String toSource(int depth) {
StringBuilder sb = new StringBuilder();
sb.append(makeIndent(depth));
int type = getType();
if (!isPostfix) {
sb.append(operatorToString(type));
if (type == Token.TYPEOF || type == Token.DELPROP || type == Token.VOID) {
sb.append(" ");
}
}
sb.append(operand.toSource());
if (isPostfix) {
sb.append(operatorToString(type));
}
return sb.toString();
}
代码示例来源:origin: ro.isdc.wro4j/rhino
@Override
public String toSource(int depth) {
StringBuilder sb = new StringBuilder();
sb.append(makeIndent(depth));
int type = getType();
if (!isPostfix) {
sb.append(operatorToString(type));
if (type == Token.TYPEOF || type == Token.DELPROP || type == Token.VOID) {
sb.append(" ");
}
}
sb.append(operand.toSource());
if (isPostfix) {
sb.append(operatorToString(type));
}
return sb.toString();
}
代码示例来源:origin: geogebra/geogebra
@Override
public String toSource(int depth) {
StringBuilder sb = new StringBuilder();
sb.append(makeIndent(depth));
int type = getType();
if (!isPostfix) {
sb.append(operatorToString(type));
if (type == Token.TYPEOF || type == Token.DELPROP || type == Token.VOID) {
sb.append(" ");
}
}
sb.append(operand.toSource());
if (isPostfix) {
sb.append(operatorToString(type));
}
return sb.toString();
}
代码示例来源:origin: io.apigee/rhino
private void checkBadIncDec(UnaryExpression expr) {
AstNode op = removeParens(expr.getOperand());
int tt = op.getType();
if (!(tt == Token.NAME
|| tt == Token.GETPROP
|| tt == Token.GETELEM
|| tt == Token.GET_REF
|| tt == Token.CALL))
reportError(expr.getType() == Token.INC
? "msg.bad.incr"
: "msg.bad.decr");
}
代码示例来源:origin: com.github.tntim96/rhino
private void checkBadIncDec(UnaryExpression expr) {
AstNode op = removeParens(expr.getOperand());
int tt = op.getType();
if (!(tt == Token.NAME
|| tt == Token.GETPROP
|| tt == Token.GETELEM
|| tt == Token.GET_REF
|| tt == Token.CALL))
reportError(expr.getType() == Token.INC
? "msg.bad.incr"
: "msg.bad.decr");
}
代码示例来源:origin: geogebra/geogebra
private void checkBadIncDec(UnaryExpression expr) {
AstNode op = removeParens(expr.getOperand());
int tt = op.getType();
if (!(tt == Token.NAME
|| tt == Token.GETPROP
|| tt == Token.GETELEM
|| tt == Token.GET_REF
|| tt == Token.CALL))
reportError(expr.getType() == Token.INC
? "msg.bad.incr"
: "msg.bad.decr");
}
代码示例来源:origin: ro.isdc.wro4j/rhino
private void checkBadIncDec(UnaryExpression expr) {
AstNode op = removeParens(expr.getOperand());
int tt = op.getType();
if (!(tt == Token.NAME
|| tt == Token.GETPROP
|| tt == Token.GETELEM
|| tt == Token.GET_REF
|| tt == Token.CALL))
reportError(expr.getType() == Token.INC
? "msg.bad.incr"
: "msg.bad.decr");
}
代码示例来源:origin: wala/WALA
@Override
public CAstNode visitUnaryExpression(UnaryExpression node, WalkContext arg) {
if (node.getType() == Token.INC || node.getType() == Token.DEC) {
CAstNode op = (node.getType() == Token.DEC) ? CAstOperator.OP_SUB : CAstOperator.OP_ADD;
AstNode l = node.getOperand();
CAstNode last = visit(l, arg);
return Ast.makeNode((node.isPostfix() ? CAstNode.ASSIGN_POST_OP : CAstNode.ASSIGN_PRE_OP), last,
Ast.makeConstant(1), op);
} else if (node.getType() == Token.TYPEOFNAME) {
return Ast.makeNode(CAstNode.TYPE_OF, Ast.makeNode(CAstNode.VAR, Ast.makeConstant(node.getString())));
} else if (node.getType() == Token.TYPEOF) {
return Ast.makeNode(CAstNode.TYPE_OF, visit(node.getOperand(), arg));
} else if (node.getType() == Token.DELPROP) {
AstNode expr = node.getOperand();
if (expr instanceof FunctionCall) {
expr = ((FunctionCall) expr).getTarget();
assert expr instanceof PropertyGet;
}
return Ast.makeNode(CAstNode.ASSIGN, visit(expr, arg), Ast.makeConstant(null));
} else if (node.getType() == Token.VOID) {
return Ast.makeConstant(null);
} else {
return Ast.makeNode(CAstNode.UNARY_EXPR, translateOpcode(node.getOperator()), visit(node.getOperand(), arg));
}
}
代码示例来源:origin: org.teavm/teavm-jso-impl
private void printUnary(UnaryExpression node, int precedence) throws IOException {
int innerPrecedence = node.isPostfix() ? PRECEDENCE_POSTFIX : PRECEDENCE_PREFIX;
if (innerPrecedence > precedence) {
writer.append('(');
}
if (!node.isPostfix()) {
String op = AstNode.operatorToString(node.getType());
if (op.startsWith("-")) {
writer.append(' ');
}
writer.append(op);
if (requiresWhitespaces(node.getType())) {
writer.append(' ');
}
}
print(node.getOperand(), innerPrecedence);
if (node.isPostfix()) {
writer.append(AstNode.operatorToString(node.getType()));
}
if (innerPrecedence > precedence) {
writer.append(')');
}
}
代码示例来源:origin: geogebra/geogebra
private Node transformUnary(UnaryExpression node) {
int type = node.getType();
if (type == Token.DEFAULTNAMESPACE) {
return transformDefaultXmlNamepace(node);
}
if (node.isPrefix()) {
decompiler.addToken(type);
}
Node child = transform(node.getOperand());
if (node.isPostfix()) {
decompiler.addToken(type);
}
if (type == Token.INC || type == Token.DEC) {
return createIncDec(type, node.isPostfix(), child);
}
return createUnary(type, child);
}
代码示例来源:origin: ro.isdc.wro4j/rhino
private Node transformUnary(UnaryExpression node) {
int type = node.getType();
if (type == Token.DEFAULTNAMESPACE) {
return transformDefaultXmlNamepace(node);
}
if (node.isPrefix()) {
decompiler.addToken(type);
}
Node child = transform(node.getOperand());
if (node.isPostfix()) {
decompiler.addToken(type);
}
if (type == Token.INC || type == Token.DEC) {
return createIncDec(type, node.isPostfix(), child);
}
return createUnary(type, child);
}
代码示例来源:origin: com.github.tntim96/rhino
private Node transformUnary(UnaryExpression node) {
int type = node.getType();
if (type == Token.DEFAULTNAMESPACE) {
return transformDefaultXmlNamepace(node);
}
if (node.isPrefix()) {
decompiler.addToken(type);
}
Node child = transform(node.getOperand());
if (node.isPostfix()) {
decompiler.addToken(type);
}
if (type == Token.INC || type == Token.DEC) {
return createIncDec(type, node.isPostfix(), child);
}
return createUnary(type, child);
}
代码示例来源:origin: io.apigee/rhino
private Node transformUnary(UnaryExpression node) {
int type = node.getType();
if (type == Token.DEFAULTNAMESPACE) {
return transformDefaultXmlNamepace(node);
}
if (node.isPrefix()) {
decompiler.addToken(type);
}
Node child = transform(node.getOperand());
if (node.isPostfix()) {
decompiler.addToken(type);
}
if (type == Token.INC || type == Token.DEC) {
return createIncDec(type, node.isPostfix(), child);
}
return createUnary(type, child);
}
内容来源于网络,如有侵权,请联系作者删除!