public ClassDefinition GetCompilerGeneratedExtensionsClass()
{
if (null == _compilerGeneratedExtensionsClass)
{
BooClassBuilder builder = CodeBuilder.CreateClass("CompilerGeneratedExtensions");
builder.Modifiers = TypeMemberModifiers.Final | TypeMemberModifiers.Transient | TypeMemberModifiers.Public;
builder.AddBaseType(ObjectType);
BooMethodBuilder ctor = builder.AddConstructor();
ctor.Modifiers = TypeMemberModifiers.Private;
ctor.Body.Add(
CodeBuilder.CreateSuperConstructorInvocation(ObjectType));
ClassDefinition cd = builder.ClassDefinition;
Module module = GetCompilerGeneratedExtensionsModule();
module.Members.Add(cd);
((ModuleEntity)module.Entity).InitializeModuleClass(cd);
_compilerGeneratedExtensionsClass = cd;
}
return(_compilerGeneratedExtensionsClass);
}