This package contains the meta model abstractions as used by the semantical services. The {@link recoder.abstraction.ProgramModelElement}s hide the origin of the information, be it from Java source code, Java byte code, or predefined lacking any syntactical representation.

There are three implicitly defined entities - {@link recoder.abstraction.ArrayType}, {@link recoder.abstraction.DefaultConstructor}, and {@link recoder.abstraction.Package}, as well as the predefined types {@link recoder.abstraction.NullType} and the base class for the small number of {@link recoder.abstraction.PrimitiveType}s.

{@link recoder.abstraction.Scope}s are attached to {@link recoder.abstraction.ScopeDefiningElement}s by {@link recoder.service.SourceInfo} implementations and should not be modified from others.