(Object reader, Object firstChar, Object opts, Object pendingForms)
| 1416 | |
| 1417 | public 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 |
nothing calls this directly
no test coverage detected