This package contains classes to represent the various elements of class files.

A class file is represented by the `{@link proguard.classfile.Clazz Clazz}` interface. This interface currently has two alternative representations:

- `{@link ProgramClass ProgramClass}`: a complete representation that can be read, modified, and written back.
- `{@link LibraryClass LibraryClass}`: an incomplete representation that can be only be read. It is however more compact than `ProgramClass`, and sufficient for analyzing class files from library jars.