Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (102)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (322)
Collections:
Other Resources:
Rhino JavaScript Java Library Source Code
Rhino JavaScript Java Library is an open-source implementation of JavaScript
written entirely in Java.
Rhino JavaScript Java Library Source Code files are provided in binary package (rhino-1.7.14.zip).
You can also browse the source code below:
✍: FYIcenter.com
⏎ org/mozilla/javascript/ast/IfStatement.java
/* -*- Mode: java; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
/**
* If-else statement. Node type is {@link Token#IF}.
*
* <pre><i>IfStatement</i> :
* <b>if</b> ( Expression ) Statement <b>else</b> Statement
* <b>if</b> ( Expression ) Statement</pre>
*/
public class IfStatement extends AstNode {
private AstNode condition;
private AstNode thenPart;
private int elsePosition = -1;
private AstNode elsePart;
private AstNode elseKeyWordInlineComment;
private int lp = -1;
private int rp = -1;
{
type = Token.IF;
}
public IfStatement() {
}
public IfStatement(int pos) {
super(pos);
}
public IfStatement(int pos, int len) {
super(pos, len);
}
/**
* Returns if condition
*/
public AstNode getCondition() {
return condition;
}
/**
* Sets if condition.
* @throws IllegalArgumentException if {@code condition} is {@code null}.
*/
public void setCondition(AstNode condition) {
assertNotNull(condition);
this.condition = condition;
condition.setParent(this);
}
/**
* Returns statement to execute if condition is true
*/
public AstNode getThenPart() {
return thenPart;
}
/**
* Sets statement to execute if condition is true
* @throws IllegalArgumentException if thenPart is {@code null}
*/
public void setThenPart(AstNode thenPart) {
assertNotNull(thenPart);
this.thenPart = thenPart;
thenPart.setParent(this);
}
/**
* Returns statement to execute if condition is false
*/
public AstNode getElsePart() {
return elsePart;
}
/**
* Sets statement to execute if condition is false
* @param elsePart statement to execute if condition is false.
* Can be {@code null}.
*/
public void setElsePart(AstNode elsePart) {
this.elsePart = elsePart;
if (elsePart != null)
elsePart.setParent(this);
}
/**
* Returns position of "else" keyword, or -1
*/
public int getElsePosition() {
return elsePosition;
}
/**
* Sets position of "else" keyword, -1 if not present
*/
public void setElsePosition(int elsePosition) {
this.elsePosition = elsePosition;
}
/**
* Returns left paren offset
*/
public int getLp() {
return lp;
}
/**
* Sets left paren offset
*/
public void setLp(int lp) {
this.lp = lp;
}
/**
* Returns right paren position, -1 if missing
*/
public int getRp() {
return rp;
}
/**
* Sets right paren position, -1 if missing
*/
public void setRp(int rp) {
this.rp = rp;
}
/**
* Sets both paren positions
*/
public void setParens(int lp, int rp) {
this.lp = lp;
this.rp = rp;
}
@Override
public String toSource(int depth) {
String pad = makeIndent(depth);
StringBuilder sb = new StringBuilder(32);
sb.append(pad);
sb.append("if (");
sb.append(condition.toSource(0));
sb.append(") ");
if(this.getInlineComment() != null) {
sb.append(" ").append(this.getInlineComment().toSource()).append("\n");
}
if (thenPart.getType() != Token.BLOCK) {
if(this.getInlineComment() == null) {
sb.append("\n");
}
sb.append(makeIndent(depth + 1));
}
sb.append(thenPart.toSource(depth).trim());
if (elsePart != null) {
if (thenPart.getType() != Token.BLOCK) {
sb.append("\n").append(pad).append("else ");
} else {
sb.append(" else ");
}
if(this.getElseKeyWordInlineComment() != null) {
sb.append(" ").append(this.getElseKeyWordInlineComment().toSource()).append("\n");
}
if (elsePart.getType() != Token.BLOCK
&& elsePart.getType() != Token.IF) {
if(this.getElseKeyWordInlineComment() == null) {
sb.append("\n");
}
sb.append(makeIndent(depth + 1));
}
sb.append(elsePart.toSource(depth).trim());
}
sb.append("\n");
return sb.toString();
}
/**
* Visits this node, the condition, the then-part, and
* if supplied, the else-part.
*/
@Override
public void visit(NodeVisitor v) {
if (v.visit(this)) {
condition.visit(v);
thenPart.visit(v);
if (elsePart != null) {
elsePart.visit(v);
}
}
}
public AstNode getElseKeyWordInlineComment() {
return elseKeyWordInlineComment;
}
public void setElseKeyWordInlineComment(AstNode elseKeyWordInlineComment) {
this.elseKeyWordInlineComment = elseKeyWordInlineComment;
}
}
⏎ org/mozilla/javascript/ast/IfStatement.java
Or download all of them as a single archive file:
File name: rhino-1.7.14-sources.jar File size: 1029165 bytes Release date: 2022-01-06 Download
⇒ Example code to Test rhino-runtime-1.7.14.jar
⇐ Download Rhino JavaScript Binary Package
2022-05-03, ≈102🔥, 1💬
Popular Posts:
xml-commons Resolver Source Code Files are provided in the source package file, xml-commons-resolver...
What Is poi-ooxml-3.5.jar? poi-ooxml-3.5.jar is one of the JAR files for Apache POI 3.5, which provi...
What is the sax\Counter.java provided in the Apache Xerces package? I have Apache Xerces 2.11.0 inst...
JDK 17 java.xml.jmod is the JMOD file for JDK 17 XML (eXtensible Markup Language) module. JDK 17 XML...
How to download and install iText7-Core-7.1.4.zip? iText7-Core-7.1.4.zip is the binary package of iT...