public Object invoke(Object reader, Object quote, Object opts, Object pendingForms) { PushbackReader r = (PushbackReader) reader; Object o = read(r, true, null, true, opts, ensurePending(pendingForms)); // if(o instanceof Symbol) // { // Object v = Compiler.maybeResolveIn(Compiler.currentNS(), (Symbol) o); // if(v instanceof Var) // return v; // } return RT.list(THE_VAR, o); } }
public Object invoke(Object reader, Object quote) { PushbackReader r = (PushbackReader) reader; Object o = read(r, true, null, true); // if(o instanceof Symbol) // { // Object v = Compiler.maybeResolveIn(Compiler.currentNS(), (Symbol) o); // if(v instanceof Var) // return v; // } return RT.list(THE_VAR, o); } }
public Object invoke(Object reader, Object quote) { PushbackReader r = (PushbackReader) reader; Object o = read(r, true, null, true); return RT.list(sym, o); }
public Object invoke(Object reader, Object quote, Object opts, Object pendingForms) { PushbackReader r = (PushbackReader) reader; Object o = read(r, true, null, true, opts, ensurePending(pendingForms)); return RT.list(sym, o); }
public void setTag(Symbol tag) { try { alterMeta(assoc, RT.list(RT.TAG_KEY, tag)); } catch (Exception e) { throw Util.sneakyThrow(e); } }
public Object invoke(Object reader, Object quote, Object opts, Object pendingForms) { System.out.println("WARNING: reader macro " + macro + " is deprecated; use " + sym.getName() + " instead"); PushbackReader r = (PushbackReader) reader; Object o = read(r, true, null, true, opts, ensurePending(pendingForms)); return RT.list(sym, o); }
public Object invoke(Object reader, Object quote) { System.out.println("WARNING: reader macro " + macro + " is deprecated; use " + sym.getName() + " instead"); PushbackReader r = (PushbackReader) reader; Object o = read(r, true, null, true); return RT.list(sym, o); }
public void setMacro() { alterMeta(assoc, RT.list(macroKey, RT.T)); }
public void setTag(Symbol tag) { alterMeta(assoc, RT.list(RT.TAG_KEY, tag)); }
public Object invoke(Object reader, Object comma, Object opts, Object pendingForms) { PushbackReader r = (PushbackReader) reader; int ch = read1(r); if(ch == -1) throw Util.runtimeException("EOF while reading character"); pendingForms = ensurePending(pendingForms); if(ch == '@') { Object o = read(r, true, null, true, opts, pendingForms); return RT.list(UNQUOTE_SPLICING, o); } else { unread(r, ch); Object o = read(r, true, null, true, opts, pendingForms); return RT.list(UNQUOTE, o); } }
private static final class DefaultComparator implements Comparator, Serializable { public int compare(Object o1, Object o2){ return Util.compare(o1, o2); } private Object readResolve() throws ObjectStreamException { // ensures that we aren't hanging onto a new default comparator for every // sorted set, etc., we deserialize return DEFAULT_COMPARATOR; } }
synchronized public void bindRoot(Object root){ validate(getValidator(), root); Object oldroot = this.root; this.root = root; ++rev; alterMeta(dissoc, RT.list(macroKey)); notifyWatches(oldroot,this.root); }
public PersistentQueue cons(Object o){ if(f == null) //empty return new PersistentQueue(meta(), cnt + 1, RT.list(o), null); else return new PersistentQueue(meta(), cnt + 1, f, (r != null ? r : PersistentVector.EMPTY).cons(o)); }
public PersistentQueue cons(Object o){ if(f == null) //empty return new PersistentQueue(meta(), cnt + 1, RT.list(o), null); else return new PersistentQueue(meta(), cnt + 1, f, (r != null ? r : PersistentVector.EMPTY).cons(o)); }
private static ISeq sqExpandList(ISeq seq) { PersistentVector ret = PersistentVector.EMPTY; for(; seq != null; seq = seq.next()) { Object item = seq.first(); if(isUnquote(item)) ret = ret.cons(RT.list(LIST, RT.second(item))); else if(isUnquoteSplicing(item)) ret = ret.cons(RT.second(item)); else ret = ret.cons(RT.list(LIST, syntaxQuote(item))); } return ret.seq(); }
return RT.list(Compiler.FN, args, form);
throw Util.runtimeException("Can't take value of a macro: " + v); if(RT.booleanCast(RT.get(v.meta(),RT.CONST_KEY))) return analyze(C.EXPRESSION, RT.list(QUOTE, v.get())); registerVar(v); return new VarExpr(v, tag);