avoid star imports across the codebase

This commit is contained in:
rbri 2018-10-09 20:29:04 +02:00 коммит произвёл Gregory Brail
Родитель 7d9f7c4c32
Коммит f53a60b144
219 изменённых файлов: 2727 добавлений и 2162 удалений

Просмотреть файл

@ -106,8 +106,7 @@
<!-- Checks for imports -->
<!-- See http://checkstyle.sf.net/config_import.html -->
<!-- Unfortunately there's a lot of code to change with star imports... -->
<!-- <module name="AvoidStarImport"/> -->
<module name="AvoidStarImport"/>
<module name="IllegalImport"/>
<!-- defaults to sun.* packages -->
<module name="RedundantImport"/>

Просмотреть файл

@ -4,7 +4,10 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
/**
* Example of controlling the JavaScript execution engine.

Просмотреть файл

@ -4,9 +4,9 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.annotations.JSFunction;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.annotations.JSConstructor;
import org.mozilla.javascript.annotations.JSFunction;
import org.mozilla.javascript.annotations.JSGetter;
public class Counter extends ScriptableObject {

Просмотреть файл

@ -4,7 +4,9 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
/**
* An example illustrating how to create a JavaScript object and retrieve

Просмотреть файл

@ -4,7 +4,11 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.ContextFactory;
import org.mozilla.javascript.Script;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
/**
* Example of controlling the JavaScript with multiple scopes and threads.

Просмотреть файл

@ -4,15 +4,25 @@
* 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/. */
import org.mozilla.javascript.*;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.annotations.JSConstructor;
import org.mozilla.javascript.annotations.JSFunction;
import org.mozilla.javascript.annotations.JSGetter;
import java.io.*;
import java.util.List;
import java.util.ArrayList;
/**
* Define a simple JavaScript File object.
*

Просмотреть файл

@ -4,7 +4,10 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.annotations.JSFunction;
import org.mozilla.javascript.annotations.JSGetter;

Просмотреть файл

@ -4,9 +4,12 @@
* 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/. */
import org.mozilla.javascript.*;
import java.util.List;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
/**
* Matrix: An example host object class that implements the Scriptable interface.

Просмотреть файл

@ -4,7 +4,9 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.WrapFactory;
/**
* An example WrapFactory that can be used to avoid wrapping of Java types

Просмотреть файл

@ -4,7 +4,8 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
/**
* RunScript: simplest example of controlling execution of Rhino.

Просмотреть файл

@ -4,7 +4,9 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
/**
* RunScript2: Like RunScript, but reflects the System.out into JavaScript.

Просмотреть файл

@ -4,7 +4,9 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.Scriptable;
/**
* RunScript3: Example of using JavaScript objects

Просмотреть файл

@ -4,7 +4,9 @@
* 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/. */
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
/**
* RunScript4: Execute scripts in an environment that includes the

Просмотреть файл

@ -4,8 +4,19 @@
* 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/. */
import org.mozilla.javascript.*;
import java.io.*;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.EvaluatorException;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.JavaScriptException;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.WrappedException;
/**
* The shell program.

Просмотреть файл

@ -9,11 +9,11 @@ package org.mozilla.classfile;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Arrays;
import org.mozilla.javascript.ObjArray;
import org.mozilla.javascript.UintMap;
import java.util.Arrays;
/**
* ClassFileWriter
*

Просмотреть файл

@ -6,9 +6,9 @@
package org.mozilla.javascript;
import java.io.Serializable;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.io.Serializable;
/**
* Cache of generated classes and data structures to access Java runtime

Просмотреть файл

@ -6,9 +6,9 @@
package org.mozilla.javascript;
import org.mozilla.javascript.ast.ScriptNode;
import org.mozilla.javascript.ast.Jump;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.Jump;
import org.mozilla.javascript.ast.ScriptNode;
/**
* Generates bytecode for the Interpreter.

Просмотреть файл

@ -14,7 +14,8 @@ package org.mozilla.javascript;
*/
import java.util.Iterator;
import static org.mozilla.javascript.ScriptableObject.SlotAccess.*;
import org.mozilla.javascript.ScriptableObject.SlotAccess;
public class EmbeddedSlotMap
implements SlotMap {
@ -106,7 +107,7 @@ public class EmbeddedSlotMap
@Override
public ScriptableObject.Slot get(Object key, int index, ScriptableObject.SlotAccess accessType)
{
if (slots == null && accessType == QUERY) {
if (slots == null && accessType == SlotAccess.QUERY) {
return null;
}
@ -181,14 +182,14 @@ public class EmbeddedSlotMap
// accessType flag and return the appropriate slot instance.
ScriptableObject.Slot newSlot;
if (accessType == MODIFY_GETTER_SETTER
if (accessType == SlotAccess.MODIFY_GETTER_SETTER
&& !(slot instanceof ScriptableObject.GetterSlot)) {
newSlot = new ScriptableObject.GetterSlot(key, indexOrHash,
slot.getAttributes());
} else if (accessType == CONVERT_ACCESSOR_TO_DATA
} else if (accessType == SlotAccess.CONVERT_ACCESSOR_TO_DATA
&& (slot instanceof ScriptableObject.GetterSlot)) {
newSlot = new ScriptableObject.Slot(key, indexOrHash, slot.getAttributes());
} else if (accessType == MODIFY_CONST) {
} else if (accessType == SlotAccess.MODIFY_CONST) {
return null;
} else {
return slot;
@ -233,10 +234,10 @@ public class EmbeddedSlotMap
slots = newSlots;
}
ScriptableObject.Slot newSlot = (accessType == MODIFY_GETTER_SETTER
ScriptableObject.Slot newSlot = (accessType == SlotAccess.MODIFY_GETTER_SETTER
? new ScriptableObject.GetterSlot(key, indexOrHash, 0)
: new ScriptableObject.Slot(key, indexOrHash, 0));
if (accessType == MODIFY_CONST) {
if (accessType == SlotAccess.MODIFY_CONST) {
newSlot.setAttributes(ScriptableObject.CONST);
}
insertNewSlot(newSlot);

Просмотреть файл

@ -6,10 +6,10 @@
package org.mozilla.javascript;
import org.mozilla.javascript.ast.ScriptNode;
import java.util.List;
import org.mozilla.javascript.ast.ScriptNode;
/**
* Abstraction of evaluation, which can be implemented either by an
* interpreter or compiler.

Просмотреть файл

@ -8,8 +8,13 @@
package org.mozilla.javascript;
import java.lang.reflect.*;
import java.io.*;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.lang.reflect.Constructor;
import java.lang.reflect.Executable;
import java.lang.reflect.Member;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
public class FunctionObject extends BaseFunction
{

Просмотреть файл

@ -8,7 +8,8 @@ package org.mozilla.javascript;
import java.util.Iterator;
import java.util.LinkedHashMap;
import static org.mozilla.javascript.ScriptableObject.SlotAccess.*;
import org.mozilla.javascript.ScriptableObject.SlotAccess;
/**
* This class implements the SlotMap interface using a java.util.HashMap. This class has more
@ -72,13 +73,13 @@ public class HashSlotMap
if (slot != null) {
ScriptableObject.Slot newSlot;
if (accessType == MODIFY_GETTER_SETTER
if (accessType == SlotAccess.MODIFY_GETTER_SETTER
&& !(slot instanceof ScriptableObject.GetterSlot)) {
newSlot = new ScriptableObject.GetterSlot(name, slot.indexOrHash, slot.getAttributes());
} else if (accessType == CONVERT_ACCESSOR_TO_DATA
} else if (accessType == SlotAccess.CONVERT_ACCESSOR_TO_DATA
&& (slot instanceof ScriptableObject.GetterSlot)) {
newSlot = new ScriptableObject.Slot(name, slot.indexOrHash, slot.getAttributes());
} else if (accessType == MODIFY_CONST) {
} else if (accessType == SlotAccess.MODIFY_CONST) {
return null;
} else {
return slot;
@ -88,10 +89,10 @@ public class HashSlotMap
return newSlot;
}
ScriptableObject.Slot newSlot = (accessType == MODIFY_GETTER_SETTER
ScriptableObject.Slot newSlot = (accessType == SlotAccess.MODIFY_GETTER_SETTER
? new ScriptableObject.GetterSlot(key, index, 0)
: new ScriptableObject.Slot(key, index, 0));
if (accessType == MODIFY_CONST) {
if (accessType == SlotAccess.MODIFY_CONST) {
newSlot.setAttributes(ScriptableObject.CONST);
}
addSlot(newSlot);

Просмотреть файл

@ -6,6 +6,9 @@
package org.mozilla.javascript;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.ast.ArrayComprehension;
import org.mozilla.javascript.ast.ArrayComprehensionLoop;
import org.mozilla.javascript.ast.ArrayLiteral;
@ -68,9 +71,6 @@ import org.mozilla.javascript.ast.XmlRef;
import org.mozilla.javascript.ast.XmlString;
import org.mozilla.javascript.ast.Yield;
import java.util.List;
import java.util.ArrayList;
/**
* This class rewrites the parse tree into an IR suitable for codegen.
*

Просмотреть файл

@ -6,19 +6,20 @@
package org.mozilla.javascript;
import static org.mozilla.javascript.UniqueTag.DOUBLE_MARK;
import java.io.PrintStream;
import java.io.Serializable;
import java.util.List;
import java.util.Objects;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import org.mozilla.javascript.ScriptRuntime.NoSuchMethodShim;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.ScriptNode;
import org.mozilla.javascript.ScriptRuntime.NoSuchMethodShim;
import org.mozilla.javascript.debug.DebugFrame;
import static org.mozilla.javascript.UniqueTag.DOUBLE_MARK;
public final class Interpreter extends Icode implements Evaluator
{
// data for parsing

Просмотреть файл

@ -8,6 +8,7 @@ package org.mozilla.javascript;
import java.io.Serializable;
import java.util.Arrays;
import org.mozilla.javascript.debug.DebuggableScript;
final class InterpreterData implements Serializable, DebuggableScript

Просмотреть файл

@ -6,11 +6,23 @@
package org.mozilla.javascript;
import org.mozilla.classfile.*;
import java.lang.reflect.*;
import java.io.*;
import java.security.*;
import java.util.*;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.security.CodeSource;
import java.security.ProtectionDomain;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Map;
import org.mozilla.classfile.ByteCode;
import org.mozilla.classfile.ClassFileWriter;
public final class JavaAdapter implements IdFunctionCall
{

Просмотреть файл

@ -6,12 +6,21 @@
package org.mozilla.javascript;
import java.lang.reflect.*;
import java.util.*;
import static java.lang.reflect.Modifier.isProtected;
import static java.lang.reflect.Modifier.isPublic;
import java.lang.reflect.AccessibleObject;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.lang.reflect.Member;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
*
* @author Mike Shaver

Просмотреть файл

@ -6,7 +6,7 @@
package org.mozilla.javascript;
import java.lang.reflect.*;
import java.lang.reflect.InvocationTargetException;
import java.security.AccessController;
import java.security.PrivilegedAction;

Просмотреть файл

@ -6,8 +6,15 @@
package org.mozilla.javascript;
import java.lang.reflect.*;
import java.io.*;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.lang.reflect.Constructor;
import java.lang.reflect.Executable;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
/**
* Wrapper class for Method and Constructor instances to cache

Просмотреть файл

@ -6,7 +6,7 @@
package org.mozilla.javascript;
import org.mozilla.javascript.regexp.NativeRegExp;
import static org.mozilla.javascript.ScriptRuntimeES6.requireObjectCoercible;
import java.util.ArrayList;
import java.util.Arrays;
@ -17,7 +17,7 @@ import java.util.List;
import java.util.ListIterator;
import java.util.NoSuchElementException;
import static org.mozilla.javascript.ScriptRuntimeES6.requireObjectCoercible;
import org.mozilla.javascript.regexp.NativeRegExp;
/**
* This class implements the Array native object.

Просмотреть файл

@ -10,7 +10,7 @@ public class NativeCollectionIterator
private final String className;
private final Type type;
enum Type { KEYS, VALUES, BOTH };
enum Type { KEYS, VALUES, BOTH }
static void init(ScriptableObject scope, String tag, boolean sealed) {
ES6Iterator.init(scope, sealed, new NativeCollectionIterator(tag), tag);

Просмотреть файл

@ -6,10 +6,9 @@
package org.mozilla.javascript;
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.TimeZone;
/**

Просмотреть файл

@ -6,12 +6,13 @@
package org.mozilla.javascript;
import static org.mozilla.javascript.ScriptableObject.DONTENUM;
import static org.mozilla.javascript.ScriptableObject.PERMANENT;
import static org.mozilla.javascript.ScriptableObject.READONLY;
import java.io.Serializable;
import org.mozilla.javascript.xml.XMLLib;
import static org.mozilla.javascript.ScriptableObject.DONTENUM;
import static org.mozilla.javascript.ScriptableObject.READONLY;
import static org.mozilla.javascript.ScriptableObject.PERMANENT;
/**
* This class implements the global native object (function and value

Просмотреть файл

@ -6,14 +6,14 @@
package org.mozilla.javascript;
import org.mozilla.javascript.json.JsonParser;
import java.util.Stack;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.Arrays;
import java.util.List;
import java.util.LinkedList;
import java.util.List;
import java.util.Stack;
import org.mozilla.javascript.json.JsonParser;
/**
* This class implements the JSON native object.

Просмотреть файл

@ -6,7 +6,8 @@
package org.mozilla.javascript;
import java.lang.reflect.*;
import java.lang.reflect.Array;
import java.lang.reflect.Modifier;
import java.util.Map;
/**

Просмотреть файл

@ -6,7 +6,8 @@
package org.mozilla.javascript;
import java.lang.reflect.*;
import java.lang.reflect.Array;
import java.lang.reflect.Method;
import java.util.Arrays;
import java.util.concurrent.CopyOnWriteArrayList;

Просмотреть файл

@ -6,10 +6,15 @@
package org.mozilla.javascript;
import java.io.*;
import java.lang.reflect.*;
import java.util.Map;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.lang.reflect.Array;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.Date;
import java.util.Map;
/**
* This class reflects non-Array Java objects into the JavaScript environment. It

Просмотреть файл

@ -6,7 +6,14 @@
package org.mozilla.javascript;
import java.util.*;
import java.util.AbstractCollection;
import java.util.AbstractSet;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
import java.util.NoSuchElementException;
import java.util.Set;
/**
* This class implements the Object native object.

Просмотреть файл

@ -6,13 +6,13 @@
package org.mozilla.javascript;
import org.mozilla.javascript.regexp.NativeRegExp;
import static org.mozilla.javascript.ScriptRuntime.rangeError;
import static org.mozilla.javascript.ScriptRuntimeES6.requireObjectCoercible;
import java.text.Collator;
import java.text.Normalizer;
import static org.mozilla.javascript.ScriptRuntime.rangeError;
import static org.mozilla.javascript.ScriptRuntimeES6.requireObjectCoercible;
import org.mozilla.javascript.regexp.NativeRegExp;
/**
* This class implements the String native object.

Просмотреть файл

@ -6,6 +6,9 @@
package org.mozilla.javascript;
import java.util.Iterator;
import java.util.NoSuchElementException;
import org.mozilla.javascript.ast.Comment;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.Jump;
@ -14,9 +17,6 @@ import org.mozilla.javascript.ast.NumberLiteral;
import org.mozilla.javascript.ast.Scope;
import org.mozilla.javascript.ast.ScriptNode;
import java.util.Iterator;
import java.util.NoSuchElementException;
/**
* This class implements the root of the intermediate representation.
*

Просмотреть файл

@ -6,14 +6,14 @@
package org.mozilla.javascript;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.Jump;
import org.mozilla.javascript.ast.Scope;
import org.mozilla.javascript.ast.ScriptNode;
import java.util.ArrayList;
import java.util.List;
/**
* This class transforms a tree to a lower-level representation for codegen.
*

Просмотреть файл

@ -6,10 +6,10 @@
package org.mozilla.javascript;
import java.io.Serializable;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
/**
Implementation of resizable array with focus on minimizing memory usage by storing few initial array elements in object fields. Can also be used as a stack.

Просмотреть файл

@ -6,10 +6,10 @@
package org.mozilla.javascript;
import java.io.Serializable;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
/**
* Map to associate objects to integers.

Просмотреть файл

@ -6,6 +6,16 @@
package org.mozilla.javascript;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.Reader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.mozilla.javascript.ast.ArrayComprehension;
import org.mozilla.javascript.ast.ArrayComprehensionLoop;
import org.mozilla.javascript.ast.ArrayLiteral;
@ -72,17 +82,6 @@ import org.mozilla.javascript.ast.XmlRef;
import org.mozilla.javascript.ast.XmlString;
import org.mozilla.javascript.ast.Yield;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.Reader;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.HashSet;
/**
* This class implements the JavaScript parser.<p>
*

Просмотреть файл

@ -15,8 +15,8 @@ import java.util.ResourceBundle;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.v8dtoa.DoubleConversion;
import org.mozilla.javascript.v8dtoa.FastDtoa;
import org.mozilla.javascript.xml.XMLObject;
import org.mozilla.javascript.xml.XMLLib;
import org.mozilla.javascript.xml.XMLObject;
/**
* This is the class that implements the runtime.

Просмотреть файл

@ -25,12 +25,12 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import org.mozilla.javascript.debug.DebuggableObject;
import org.mozilla.javascript.annotations.JSConstructor;
import org.mozilla.javascript.annotations.JSFunction;
import org.mozilla.javascript.annotations.JSGetter;
import org.mozilla.javascript.annotations.JSSetter;
import org.mozilla.javascript.annotations.JSStaticFunction;
import org.mozilla.javascript.debug.DebuggableObject;
/**
* This is the default implementation of the Scriptable interface. This

Просмотреть файл

@ -7,6 +7,7 @@
package org.mozilla.javascript;
import java.util.Iterator;
import org.mozilla.javascript.ScriptableObject.Slot;
import org.mozilla.javascript.ScriptableObject.SlotAccess;

Просмотреть файл

@ -8,6 +8,7 @@ package org.mozilla.javascript;
import java.util.Iterator;
import java.util.concurrent.locks.StampedLock;
import org.mozilla.javascript.ScriptableObject.Slot;
import org.mozilla.javascript.ScriptableObject.SlotAccess;

Просмотреть файл

@ -6,7 +6,8 @@
package org.mozilla.javascript;
import java.io.*;
import java.io.IOException;
import java.io.Reader;
/**
* This class implements the JavaScript scanner.

Просмотреть файл

@ -6,10 +6,10 @@
package org.mozilla.javascript;
import java.io.Serializable;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
/**
* Map to associate non-negative integers to objects or integers.

Просмотреть файл

@ -4,7 +4,11 @@
package org.mozilla.javascript.annotations;
import java.lang.annotation.*;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* An annotation that marks a Java method as JavaScript constructor. This can

Просмотреть файл

@ -4,7 +4,11 @@
package org.mozilla.javascript.annotations;
import java.lang.annotation.*;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* An annotation that marks a Java method as JavaScript function. This can

Просмотреть файл

@ -4,7 +4,11 @@
package org.mozilla.javascript.annotations;
import java.lang.annotation.*;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* An annotation that marks a Java method as JavaScript getter. This can

Просмотреть файл

@ -4,7 +4,11 @@
package org.mozilla.javascript.annotations;
import java.lang.annotation.*;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* An annotation that marks a Java method as JavaScript setter. This can

Просмотреть файл

@ -4,7 +4,11 @@
package org.mozilla.javascript.annotations;
import java.lang.annotation.*;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* An annotation that marks a Java method as JavaScript static function. This can

Просмотреть файл

@ -6,11 +6,11 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* AST node for a JavaScript 1.7 Array comprehension.
* Node type is {@link Token#ARRAYCOMP}.

Просмотреть файл

@ -6,12 +6,12 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* AST node for an Array literal. The elements list will always be
* non-{@code null}, although the list will have no elements if the Array literal

Просмотреть файл

@ -6,16 +6,16 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
import java.io.Serializable;
import java.util.Comparator;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
/**
* Base class for AST node types. The goal of the AST is to represent the
* physical source code, to make it useful for code-processing tools such

Просмотреть файл

@ -6,12 +6,12 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
import java.util.SortedSet;
import java.util.TreeSet;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
/**
* Node for the root of a parse tree. It contains the statements and functions
* in the script, and a list of {@link Comment} nodes associated with the script

Просмотреть файл

@ -6,11 +6,11 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.EvaluatorException;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.EvaluatorException;
/**
* An error reporter that gathers the errors and warnings for later display.
* This a useful {@link org.mozilla.javascript.ErrorReporter} when the

Просмотреть файл

@ -6,12 +6,12 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* AST node for a function call. Node type is {@link Token#CALL}.
*/

Просмотреть файл

@ -6,15 +6,15 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
/**
* A JavaScript function declaration or expression.
* <p>Node type is {@link Token#FUNCTION}.</p>

Просмотреть файл

@ -8,6 +8,7 @@ package org.mozilla.javascript.ast;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Token;
/**

Просмотреть файл

@ -6,11 +6,11 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* A labeled statement. A statement can have more than one label. In
* this AST representation, all labels for a statement are collapsed into

Просмотреть файл

@ -6,12 +6,12 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* AST node for an Object literal (also called an Object initialiser in
* Ecma-262). The elements list will always be non-{@code null}, although

Просмотреть файл

@ -6,15 +6,15 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
/**
* Represents a scope in the lexical scope chain. Base type for
* all {@link AstNode} implementations that can introduce a new scope.

Просмотреть файл

@ -6,13 +6,13 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
/**
* Base type for {@link AstRoot} and {@link FunctionNode} nodes, which need to
* collect much of the same information.

Просмотреть файл

@ -6,8 +6,8 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Token;
/**
* AST node for a single- or double-quoted string literal.

Просмотреть файл

@ -6,11 +6,11 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* Switch-case AST node type. The switch case is always part of a
* switch statement.

Просмотреть файл

@ -6,12 +6,12 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* Switch statement AST node type.
* Node type is {@link Token#SWITCH}.

Просмотреть файл

@ -6,12 +6,12 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* Try/catch/finally statement. Node type is {@link Token#TRY}.
*

Просмотреть файл

@ -6,11 +6,11 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* A list of one or more var, const or let declarations.
* Node type is {@link Token#VAR}, {@link Token#CONST} or

Просмотреть файл

@ -6,11 +6,11 @@
package org.mozilla.javascript.ast;
import org.mozilla.javascript.Token;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Token;
/**
* AST node for an E4X (Ecma-357) embedded XML literal. Node type is
* {@link Token#XML}. The parser generates a simple list of strings and

Просмотреть файл

@ -4,11 +4,11 @@
package org.mozilla.javascript.commonjs.module;
import java.net.URI;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.TopLevel;
import java.net.URI;
/**
* A top-level module scope. This class provides methods to retrieve the
* module's source and base URIs in order to resolve relative module IDs

Просмотреть файл

@ -4,11 +4,11 @@
package org.mozilla.javascript.commonjs.module;
import java.net.URI;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import java.net.URI;
/**
* Should be implemented by Rhino embeddings to allow the require() function to
* obtain {@link ModuleScript} objects. We provide two default implementations,

Просмотреть файл

@ -6,15 +6,21 @@
package org.mozilla.javascript.jdk15;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.Iterator;
import java.lang.reflect.AccessibleObject;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.Iterator;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.ContextFactory;
import org.mozilla.javascript.InterfaceAdapter;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.VMBridge;
import org.mozilla.javascript.Wrapper;
public class VMBridge_jdk15 extends VMBridge
{

Просмотреть файл

@ -6,13 +6,13 @@
package org.mozilla.javascript.json;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptRuntime;
import java.util.ArrayList;
import java.util.List;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Scriptable;
/**
* This class converts a stream of JSON tokens into a JSON value.
*

Просмотреть файл

@ -4,15 +4,17 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.ast.Jump;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.BitSet;
import java.util.HashMap;
import java.util.Map;
import java.io.PrintWriter;
import java.io.StringWriter;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.ObjArray;
import org.mozilla.javascript.ObjToIntMap;
import org.mozilla.javascript.Token;
import org.mozilla.javascript.ast.Jump;
class Block
{

Просмотреть файл

@ -6,7 +6,12 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.CompilerEnvirons;
import org.mozilla.javascript.IRFactory;
import org.mozilla.javascript.JavaAdapter;
import org.mozilla.javascript.ObjToIntMap;
import org.mozilla.javascript.Parser;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.ast.AstRoot;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.ScriptNode;

Просмотреть файл

@ -7,22 +7,44 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.Jump;
import org.mozilla.javascript.ast.Name;
import org.mozilla.javascript.ast.ScriptNode;
import org.mozilla.classfile.*;
import java.util.*;
import java.lang.reflect.Constructor;
import static org.mozilla.classfile.ClassFileWriter.ACC_FINAL;
import static org.mozilla.classfile.ClassFileWriter.ACC_PRIVATE;
import static org.mozilla.classfile.ClassFileWriter.ACC_PUBLIC;
import static org.mozilla.classfile.ClassFileWriter.ACC_STATIC;
import static org.mozilla.classfile.ClassFileWriter.ACC_VOLATILE;
import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.ListIterator;
import java.util.Map;
import org.mozilla.classfile.ByteCode;
import org.mozilla.classfile.ClassFileWriter;
import org.mozilla.javascript.CompilerEnvirons;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Evaluator;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.GeneratedClassLoader;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.NativeFunction;
import org.mozilla.javascript.NativeGenerator;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.ObjArray;
import org.mozilla.javascript.ObjToIntMap;
import org.mozilla.javascript.RhinoException;
import org.mozilla.javascript.Script;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.SecurityController;
import org.mozilla.javascript.Token;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.Jump;
import org.mozilla.javascript.ast.Name;
import org.mozilla.javascript.ast.ScriptNode;
/**
* This class generates code for a given IR tree.
*

Просмотреть файл

@ -5,7 +5,9 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.Token;
import org.mozilla.javascript.ast.FunctionNode;
import org.mozilla.javascript.ast.ScriptNode;

Просмотреть файл

@ -5,7 +5,20 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.ArrowFunction;
import org.mozilla.javascript.Callable;
import org.mozilla.javascript.ConsString;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.ContextFactory;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.JavaScriptException;
import org.mozilla.javascript.NativeFunction;
import org.mozilla.javascript.NativeGenerator;
import org.mozilla.javascript.NativeIterator;
import org.mozilla.javascript.Script;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
public final class OptRuntime extends ScriptRuntime
{

Просмотреть файл

@ -5,10 +5,15 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.ast.ScriptNode;
import java.util.Map;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.NodeTransformer;
import org.mozilla.javascript.ObjArray;
import org.mozilla.javascript.Token;
import org.mozilla.javascript.ast.ScriptNode;
/**
* This class performs node transforms to prepare for optimization.
*

Просмотреть файл

@ -6,7 +6,9 @@
package org.mozilla.javascript.optimizer;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Node;
import org.mozilla.javascript.ObjArray;
import org.mozilla.javascript.Token;
import org.mozilla.javascript.ast.ScriptNode;
class Optimizer

Просмотреть файл

@ -6,7 +6,12 @@
package org.mozilla.javascript.regexp;
import org.mozilla.javascript.*;
import org.mozilla.javascript.BaseFunction;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.TopLevel;
import org.mozilla.javascript.Undefined;
/**
* This class implements the RegExp constructor native object.

Просмотреть файл

@ -6,7 +6,14 @@
package org.mozilla.javascript.regexp;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.Kit;
import org.mozilla.javascript.RegExpProxy;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.Undefined;
/**
*

Просмотреть файл

@ -262,7 +262,7 @@ msg.let.redecl =\
TypeError: redeclaration of variable {0}.
msg.parm.redecl =\
TypeError: redeclaration of formal parameter {0}.
TypeError: redeclaration of formal parameter {0}.
msg.fn.redecl =\
TypeError: redeclaration of function {0}.

Просмотреть файл

@ -8,9 +8,15 @@
package org.mozilla.javascript.serialize;
import java.io.*;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectStreamClass;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.Undefined;
import org.mozilla.javascript.UniqueTag;
/**
* Class ScriptableInputStream is used to read in a JavaScript

Просмотреть файл

@ -6,12 +6,17 @@
package org.mozilla.javascript.serialize;
import java.util.Map;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.io.OutputStream;
import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;
import java.util.StringTokenizer;
import java.io.*;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.UniqueTag;
/**
* Class ScriptableOutputStream is an ObjectOutputStream used

Просмотреть файл

@ -6,7 +6,11 @@
package org.mozilla.javascript.xml;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Ref;
import org.mozilla.javascript.ScriptRuntime;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
public abstract class XMLLib
{

Просмотреть файл

@ -6,7 +6,11 @@
package org.mozilla.javascript.xml;
import org.mozilla.javascript.*;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.IdScriptableObject;
import org.mozilla.javascript.NativeWith;
import org.mozilla.javascript.Ref;
import org.mozilla.javascript.Scriptable;
/**
* This Interface describes what all XML objects (XML, XMLList) should have in common.

Просмотреть файл

@ -8,6 +8,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import junit.framework.TestCase;
public class EqualObjectGraphsTest extends TestCase {

Просмотреть файл

@ -1,18 +1,19 @@
package org.mozilla.javascript.benchmarks;
import com.google.caliper.AfterExperiment;
import com.google.caliper.BeforeExperiment;
import com.google.caliper.Benchmark;
import com.google.caliper.Param;
import java.io.FileReader;
import java.io.IOException;
import java.util.Random;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Function;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.ScriptableObject;
import org.mozilla.javascript.tools.shell.Global;
import java.io.FileReader;
import java.io.IOException;
import java.util.Random;
import com.google.caliper.AfterExperiment;
import com.google.caliper.BeforeExperiment;
import com.google.caliper.Benchmark;
import com.google.caliper.Param;
@SuppressWarnings("unused")
public class CaliperObjectBenchmark

Просмотреть файл

@ -1,20 +1,20 @@
package org.mozilla.javascript.benchmarks;
import com.google.caliper.AfterExperiment;
import com.google.caliper.BeforeExperiment;
import com.google.caliper.Benchmark;
import com.google.caliper.Param;
import com.google.caliper.api.Macrobenchmark;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Script;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.tools.shell.Global;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.HashMap;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.Script;
import org.mozilla.javascript.Scriptable;
import org.mozilla.javascript.tools.shell.Global;
import com.google.caliper.AfterExperiment;
import com.google.caliper.BeforeExperiment;
import com.google.caliper.Param;
import com.google.caliper.api.Macrobenchmark;
@SuppressWarnings("unused")
public class CaliperSpiderBenchmark
{

Просмотреть файл

@ -1,16 +1,14 @@
package org.mozilla.javascript.benchmarks;
import com.google.caliper.api.ResultProcessor;
import com.google.caliper.model.Measurement;
import com.google.caliper.model.Trial;
import com.google.caliper.model.Value;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.HashMap;
import java.util.Map;
import com.google.caliper.api.ResultProcessor;
import com.google.caliper.model.Measurement;
import com.google.caliper.model.Trial;
public class ResultPlotter
implements ResultProcessor

Просмотреть файл

@ -1,13 +1,18 @@
package org.mozilla.javascript.benchmarks;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.HashMap;
import org.junit.AfterClass;
import org.junit.Test;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.tools.shell.Global;
import java.io.*;
import java.util.HashMap;
public class SunSpiderBenchmark
{
public static final String TEST_SRC = "sunspider-0.9.1/run.js";

Просмотреть файл

@ -1,13 +1,18 @@
package org.mozilla.javascript.benchmarks;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.HashMap;
import org.junit.AfterClass;
import org.junit.Test;
import org.mozilla.javascript.Context;
import org.mozilla.javascript.tools.shell.Global;
import java.io.*;
import java.util.HashMap;
public class V8Benchmark
{
public static final String TEST_SRC = "v8-benchmarks-v6/run.js";

Просмотреть файл

@ -4,12 +4,21 @@
package org.mozilla.javascript.drivers;
import java.io.*;
import java.util.*;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import org.w3c.dom.*;
import org.mozilla.javascript.tools.shell.*;
import org.mozilla.javascript.tools.shell.ShellContextFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
/**
* @version $Id: JsDriver.java,v 1.10 2009/05/15 12:30:45 nboyd%atg.com Exp $
@ -325,72 +334,72 @@ public class JsDriver {
}
}
private static class XmlStatus extends ShellTest.Status {
private Element target;
private Date start;
private static class XmlStatus extends ShellTest.Status {
private Element target;
private Date start;
XmlStatus(String path, Element root) {
this.target = root.getOwnerDocument().createElement("test");
this.target.setAttribute("path", path);
root.appendChild(target);
}
XmlStatus(String path, Element root) {
this.target = root.getOwnerDocument().createElement("test");
this.target.setAttribute("path", path);
root.appendChild(target);
}
@Override
public void running(File file) {
this.start = new Date();
}
@Override
public void running(File file) {
this.start = new Date();
}
private Element createElement(Element parent, String name) {
Element rv = parent.getOwnerDocument().createElement(name);
parent.appendChild(rv);
return rv;
}
private Element createElement(Element parent, String name) {
Element rv = parent.getOwnerDocument().createElement(name);
parent.appendChild(rv);
return rv;
}
private void finish() {
Date end = new Date();
long elapsed = end.getTime() - start.getTime();
this.target.setAttribute("elapsed", String.valueOf(elapsed));
}
private void finish() {
Date end = new Date();
long elapsed = end.getTime() - start.getTime();
this.target.setAttribute("elapsed", String.valueOf(elapsed));
}
private void setTextContent(Element e, String content) {
e.setTextContent( newlineLineEndings(content) );
}
private void setTextContent(Element e, String content) {
e.setTextContent( newlineLineEndings(content) );
}
@Override
public void exitCodesWere(int expected, int actual) {
finish();
Element exit = createElement(target, "exit");
exit.setAttribute("expected", String.valueOf(expected));
exit.setAttribute("actual", String.valueOf(actual));
}
finish();
Element exit = createElement(target, "exit");
exit.setAttribute("expected", String.valueOf(expected));
exit.setAttribute("actual", String.valueOf(actual));
}
@Override
public void timedOut() {
finish();
createElement(target, "timedOut");
}
finish();
createElement(target, "timedOut");
}
@Override
public void failed(String s) {
finish();
Element failed = createElement(target, "failed");
setTextContent(failed, s);
}
finish();
Element failed = createElement(target, "failed");
setTextContent(failed, s);
}
@Override
public void outputWas(String message) {
finish();
Element output = createElement(target, "output");
setTextContent(output, message);
}
finish();
Element output = createElement(target, "output");
setTextContent(output, message);
}
@Override
public void threw(Throwable t) {
finish();
Element threw = createElement(target, "threw");
setTextContent(threw, ShellTest.getStackTrace(t));
}
}
finish();
Element threw = createElement(target, "threw");
setTextContent(threw, ShellTest.getStackTrace(t));
}
}
private static class Results {
private ShellContextFactory factory;
@ -401,9 +410,9 @@ public class JsDriver {
private Document html;
private Element failureHtml;
private Document xml;
private Document xml;
private Date start;
private Date start;
private int tests;
private int failures;
@ -411,11 +420,11 @@ public class JsDriver {
this.factory = factory;
this.arguments = arguments;
File output = arguments.getOutputFile();
if (output == null) {
output = new File("rhino-test-results." + new java.text.SimpleDateFormat("yyyy.MM.dd.HH.mm.ss").format(new Date()) + ".html");
}
this.output = output;
File output = arguments.getOutputFile();
if (output == null) {
output = new File("rhino-test-results." + new java.text.SimpleDateFormat("yyyy.MM.dd.HH.mm.ss").format(new Date()) + ".html");
}
this.output = output;
this.trace = trace;
}
@ -437,14 +446,14 @@ public class JsDriver {
private void write(Document template, boolean xml) {
try {
File output = this.output;
javax.xml.transform.TransformerFactory factory = javax.xml.transform.TransformerFactory.newInstance();
javax.xml.transform.Transformer xform = factory.newTransformer();
if (xml) {
xform.setOutputProperty(javax.xml.transform.OutputKeys.METHOD, "xml");
xform.setOutputProperty(javax.xml.transform.OutputKeys.OMIT_XML_DECLARATION, "yes");
output = new File(output.getCanonicalPath() + ".xml");
}
File output = this.output;
javax.xml.transform.TransformerFactory factory = javax.xml.transform.TransformerFactory.newInstance();
javax.xml.transform.Transformer xform = factory.newTransformer();
if (xml) {
xform.setOutputProperty(javax.xml.transform.OutputKeys.METHOD, "xml");
xform.setOutputProperty(javax.xml.transform.OutputKeys.OMIT_XML_DECLARATION, "yes");
output = new File(output.getCanonicalPath() + ".xml");
}
xform.transform(
new javax.xml.transform.dom.DOMSource(template),
new javax.xml.transform.stream.StreamResult( new FileOutputStream(output) )
@ -459,7 +468,7 @@ public class JsDriver {
}
}
void start() {
void start() {
this.html = getTemplate();
this.failureHtml = getElementById(html.getDocumentElement(), "failureDetails.prototype");
if (this.failureHtml == null) {
@ -475,27 +484,27 @@ public class JsDriver {
}
this.failureHtml.getParentNode().removeChild(this.failureHtml);
try {
this.xml = javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder()
.getDOMImplementation().createDocument(null, "results", null)
;
xml.getDocumentElement().setAttribute("timestamp", String.valueOf(new Date().getTime()));
xml.getDocumentElement().setAttribute("optimization", String.valueOf(arguments.getOptimizationLevel()));
try {
this.xml = javax.xml.parsers.DocumentBuilderFactory.newInstance().newDocumentBuilder()
.getDOMImplementation().createDocument(null, "results", null)
;
xml.getDocumentElement().setAttribute("timestamp", String.valueOf(new Date().getTime()));
xml.getDocumentElement().setAttribute("optimization", String.valueOf(arguments.getOptimizationLevel()));
xml.getDocumentElement().setAttribute("strict", String.valueOf(arguments.isStrict()));
xml.getDocumentElement().setAttribute("timeout", String.valueOf(arguments.getTimeout()));
} catch (javax.xml.parsers.ParserConfigurationException e) {
throw new RuntimeException(e);
}
} catch (javax.xml.parsers.ParserConfigurationException e) {
throw new RuntimeException(e);
}
this.start = new Date();
}
this.start = new Date();
}
void run(Tests.Script script, ShellTest.Parameters parameters) {
String path = script.getPath();
File test = script.getFile();
String path = script.getPath();
File test = script.getFile();
ConsoleStatus cStatus = new ConsoleStatus(arguments.getConsole(), trace);
HtmlStatus hStatus = new HtmlStatus(arguments.getLxrUrl(), arguments.getBugUrl(), path, html, (Element)failureHtml.cloneNode(true));
XmlStatus xStatus = new XmlStatus(path, this.xml.getDocumentElement());
XmlStatus xStatus = new XmlStatus(path, this.xml.getDocumentElement());
ShellTest.Status status = ShellTest.Status.compose(new ShellTest.Status[] { cStatus, hStatus, xStatus });
try {
ShellTest.run(factory, test, parameters, status);
@ -514,7 +523,7 @@ public class JsDriver {
}
void finish() {
Date end = new Date();
Date end = new Date();
long elapsedMs = end.getTime() - start.getTime();
set(html, "results.testlist", join(arguments.getTestList()));
set(html, "results.skiplist", join(arguments.getSkipList()));
@ -532,7 +541,7 @@ public class JsDriver {
set(html, "results.elapsed", elapsed);
set(html, "results.time", new java.text.SimpleDateFormat("MMMM d yyyy h:mm:ss aa").format(new java.util.Date()));
write(html, false);
write(xml, true);
write(xml, true);
}
}
@ -573,11 +582,11 @@ public class JsDriver {
Results results = new Results(factory, arguments, arguments.trace());
results.start();
results.start();
for (int i=0; i<all.length; i++) {
results.run(all[i], new ShellTestParameters(arguments.getTimeout()));
}
results.finish();
results.finish();
}
public static void main(Arguments arguments) throws Throwable {
@ -793,7 +802,7 @@ public class JsDriver {
}
if (arguments.size() == lengthBefore) {
System.err.println("WARNING: ignoring unrecognized option " + arguments.remove(0));
System.err.println("WARNING: ignoring unrecognized option " + arguments.remove(0));
}
}
}

Просмотреть файл

@ -4,6 +4,8 @@
package org.mozilla.javascript.drivers;
import static org.junit.Assert.assertTrue;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
@ -13,8 +15,6 @@ import org.mozilla.javascript.Context;
import org.mozilla.javascript.ContextFactory;
import org.mozilla.javascript.Scriptable;
import static org.junit.Assert.*;
public abstract class JsTestsBase {
private int optimizationLevel;

Просмотреть файл

@ -1,11 +1,11 @@
package org.mozilla.javascript.drivers;
import static java.lang.annotation.ElementType.TYPE;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.TYPE;
/**
* Intended to be used as an optional annotation for subclasses
* of {@link org.mozilla.javascript.drivers.ScriptTestsBase}.

Просмотреть файл

@ -1,11 +1,11 @@
package org.mozilla.javascript.drivers;
import static java.lang.annotation.ElementType.TYPE;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import static java.lang.annotation.ElementType.TYPE;
@Target(TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface RhinoTest {

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше