VariableDeclarationNode[] _classInstVars = new VariableDeclarationNode[0];
MethodNode[] _methods = methods.toArray(new MethodNode[methods.size()]);
MethodNode[] _classMethods = classMethods
.toArray(new MethodNode[classMethods.size()]);
Symbol[] _namespace = new Symbol[] { Symbol.value("ClassBuilder") };
ClassNode classNode = ClassNode.factory
.name_superclassPath_properties_instVars_classInstVars_sharedVariables_methods_classMethods_namespace_isExtension_isTrait_traitUsage_classTraitUsage_(
Symbol.value(name), superclassName, _properties,
_instVars, _classInstVars,
new SharedDeclarationNode[0], _methods, _classMethods,
_namespace, false, false,
EmptyTraitUsageNode.factory.basicNew(),
EmptyTraitUsageNode.factory.basicNew());
SystemDefinitionNode systemDefinitionNode = ImageBootstrapper.systemMapping
.systemDefinitionNode();
ImageBootstrapper.systemMapping.updateTo_(systemDefinitionNode
.withPackageNamed_classNode_(Symbol.value(name), classNode));
return ImageBootstrapper.systemMapping.classMappingAtReference_(
classNode.reference()).identityClass();
}