Core implementation of ICompileContext. A root context (i.e. where ParentContext is
null; created via the CompileContext(IResolveContext, ITargetContainer, Type)
constructor) is the starting point for all shared state, such as the Container and the compilation
The ITargetContainer implementation is done by decorating a new OverridingTargetContainer which wraps the actual target container which contains the targets which will be compiled, so that new registrations can be added without interfering with upstream containers.
An implementation of ICompiledTarget which simply wraps an instance and a known target.
Extensions for the ITargetCompiler interface.
An ICompiledTarget that can be used when a type could not be resolved.
Represents an entry in the compilation stack of a ICompileContext, recording both a target that is being compiled, and the type for which it is being compiled.