# Package org.benf.cfr.reader.api

package org.benf.cfr.reader.api

- Class
  Description
  CfrDriver
  Main driver for CFR API.
  CfrDriver.Builder
  Builder for `CfrDriver` Note that *all* parameters are optional.
  ClassFileSource
  Implementing your own `ClassFileSource` allows you to override CFR's sourcing of byte code.
  ClassFileSource.Factory
  Helper to construct "Standard" `ClassFileSource`, which may be useful for delegating to.
  OutputSinkFactory
  OutputSinkFactory.Sink<T>
  NB Sink as opposed to a stream, means that implementor has the choice of when to close.
  OutputSinkFactory.SinkClass
  Defines the kind of object that will arrive on your sink.
  All consumers should accept at least STRING.
  Not all classes are appropriate to all sink types.
  `OutputSinkFactory.Sink` instances are constructed, and used in terms of sink classes so as to ensure easy future expansion of capabilities without breaking the ABI, and without being entirely weakly typed.
  OutputSinkFactory.SinkType
  Defines the kind of sink this is.
  SinkReturns
  Sinks will accept (as defined by `OutputSinkFactory.SinkClass` various types of messages.
  SinkReturns.Decompiled
  Fuller decompilation than simply accepting STRING.
  SinkReturns.DecompiledMultiVer
  Extends `SinkReturns.Decompiled` to describe which version of JVM this class is visible from.
  SinkReturns.ExceptionMessage
  An exception message with more detail.
  SinkReturns.LineNumberMapping
  SinkReturns.Token
  SinkReturns.TokenType
  SinkReturns.TokenTypeFlags