< prev index next >
src/jdk.scripting.nashorn.shell/share/classes/jdk/nashorn/tools/jjs/HistoryObject.java
Print this page
*** 24,33 ****
--- 24,36 ----
*/
package jdk.nashorn.tools.jjs;
import java.io.IOException;
+ import java.util.Collections;
+ import java.util.HashSet;
+ import java.util.Set;
import java.util.function.Function;
import jdk.internal.jline.console.history.FileHistory;
import jdk.internal.jline.console.history.History;
import jdk.nashorn.api.scripting.AbstractJSObject;
import jdk.nashorn.api.scripting.JSObject;
*** 36,45 ****
--- 39,58 ----
/*
* A script friendly object that exposes history of commands to scripts.
*/
final class HistoryObject extends AbstractJSObject {
+ private static final Set<String> props;
+ static {
+ final HashSet<String> s = new HashSet<>();
+ s.add("clear");
+ s.add("forEach");
+ s.add("print");
+ s.add("size");
+ props = Collections.unmodifiableSet(s);
+ }
+
private final FileHistory hist;
HistoryObject(final FileHistory hist) {
this.hist = hist;
}
*** 70,79 ****
--- 83,97 ----
@Override
public String toString() {
return "[object history]";
}
+ @Override
+ public Set<String> keySet() {
+ return props;
+ }
+
private void print() {
for (History.Entry e : hist) {
System.out.println(e.value());
}
}
< prev index next >