MCPcopy Index your code
hub / github.com/clojure/clojure / invoke

Method invoke

src/jvm/clojure/lang/LispReader.java:1418–1433  ·  view source on GitHub ↗
(Object reader, Object firstChar, Object opts, Object pendingForms)

Source from the content-addressed store, hash-verified

1416
1417public static class CtorReader extends AFn{
1418 public Object invoke(Object reader, Object firstChar, Object opts, Object pendingForms){
1419 PushbackReader r = (PushbackReader) reader;
1420 pendingForms = ensurePending(pendingForms);
1421 Object name = read(r, true, null, false, opts, pendingForms);
1422 if (!(name instanceof Symbol))
1423 throw new RuntimeException("Reader tag must be a symbol");
1424 Symbol sym = (Symbol)name;
1425 Object form = read(r, true, null, true, opts, pendingForms);
1426
1427 if(isPreserveReadCond(opts) || RT.suppressRead()) {
1428 return TaggedLiteral.create(sym, form);
1429 } else {
1430 return sym.getName().contains(".") ? readRecord(form, sym, opts, pendingForms) : readTagged(form, sym, opts, pendingForms);
1431 }
1432
1433 }
1434
1435 private Object readTagged(Object o, Symbol tag, Object opts, Object pendingForms){
1436

Callers

nothing calls this directly

Calls 9

suppressReadMethod · 0.95
createMethod · 0.95
getNameMethod · 0.95
readRecordMethod · 0.95
readTaggedMethod · 0.95
ensurePendingMethod · 0.80
isPreserveReadCondMethod · 0.80
containsMethod · 0.65
readMethod · 0.45

Tested by

no test coverage detected