internal override void Generate(CodeGenContext context, CodeEmitter ilgen) { ilgen.BeginExceptionBlock(); @try.Generate(context, ilgen); if (@catch != null) { Type type; if (@catch.type != null) { type = StaticCompiler.GetTypeForMapXml(context.ClassLoader, @catch.type); } else { type = context.ClassLoader.LoadClassByDottedName(@catch.Class).TypeAsExceptionType; } ilgen.BeginCatchBlock(type); @catch.Generate(context, ilgen); } if (@finally != null) { ilgen.BeginFinallyBlock(); @finally.Generate(context, ilgen); } ilgen.EndExceptionBlock(); }