document.write('<link rel="stylesheet" href="http://gist.github.com/stylesheets/gist/embed.css"/>')





document.write('<div id=\"gist-223142\" class=\"gist\">\n  \n  \n    \n            \n\n      <div class=\"gist-file\">\n        <div class=\"gist-data gist-syntax\">\n          \n          \n          \n            <div class=\"gist-highlight\"><pre><div class=\"line\" id=\"LC1\"><span class=\"k\">private<\/span> <span class=\"k\">static<\/span> <span class=\"k\">void<\/span> <span class=\"nf\">_GenerateMethod_With_Return<\/span><span class=\"p\">(<\/span><\/div><div class=\"line\" id=\"LC2\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">MethodInfo<\/span> <span class=\"n\">methodInfo<\/span><span class=\"p\">,<\/span> <\/div><div class=\"line\" id=\"LC3\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">TypeBuilder<\/span> <span class=\"n\">typeBuilder<\/span><span class=\"p\">,<\/span> <\/div><div class=\"line\" id=\"LC4\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"kt\">string<\/span> <span class=\"n\">firstMethodName<\/span><span class=\"p\">,<\/span> <\/div><div class=\"line\" id=\"LC5\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">Type<\/span><span class=\"p\">[]<\/span> <span class=\"n\">parameterTypes<\/span><span class=\"p\">)<\/span><\/div><div class=\"line\" id=\"LC6\"><span class=\"p\">{<\/span><\/div><div class=\"line\" id=\"LC7\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">var<\/span> <span class=\"n\">returnType<\/span> <span class=\"p\">=<\/span> <span class=\"n\">methodInfo<\/span><span class=\"p\">.<\/span><span class=\"n\">ReturnType<\/span><span class=\"p\">;<\/span><\/div><div class=\"line\" id=\"LC8\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">var<\/span> <span class=\"n\">methodBuilder<\/span> <span class=\"p\">=<\/span> <span class=\"n\">typeBuilder<\/span><span class=\"p\">.<\/span><span class=\"n\">DefineMethod<\/span><span class=\"p\">(<\/span><\/div><div class=\"line\" id=\"LC9\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">firstMethodName<\/span><span class=\"p\">,<\/span><\/div><div class=\"line\" id=\"LC10\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">MethodAttributes<\/span><span class=\"p\">.<\/span><span class=\"n\">Public<\/span> <span class=\"p\">|<\/span> <span class=\"n\">MethodAttributes<\/span><span class=\"p\">.<\/span><span class=\"n\">Virtual<\/span><span class=\"p\">,<\/span><\/div><div class=\"line\" id=\"LC11\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">returnType<\/span><span class=\"p\">,<\/span><\/div><div class=\"line\" id=\"LC12\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">parameterTypes<\/span><span class=\"p\">);<\/span><\/div><div class=\"line\" id=\"LC13\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">methodBuilder<\/span><span class=\"p\">.<\/span><span class=\"n\">InitLocals<\/span> <span class=\"p\">=<\/span> <span class=\"k\">true<\/span><span class=\"p\">;<\/span><\/div><div class=\"line\" id=\"LC14\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">var<\/span> <span class=\"n\">methodIl<\/span> <span class=\"p\">=<\/span> <span class=\"n\">methodBuilder<\/span><span class=\"p\">.<\/span><span class=\"n\">GetILGenerator<\/span><span class=\"p\">();<\/span><\/div><div class=\"line\" id=\"LC15\">&nbsp;<\/div><div class=\"line\" id=\"LC16\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">methodIl<\/span><span class=\"p\">.<\/span><span class=\"n\">DeclareLocal<\/span><span class=\"p\">(<\/span><span class=\"n\">returnType<\/span><span class=\"p\">);<\/span><\/div><div class=\"line\" id=\"LC17\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">methodIl<\/span><span class=\"p\">.<\/span><span class=\"n\">Emit<\/span><span class=\"p\">(<\/span><span class=\"n\">OpCodes<\/span><span class=\"p\">.<\/span><span class=\"n\">Ldloc_0<\/span><span class=\"p\">);<\/span><\/div><div class=\"line\" id=\"LC18\">&nbsp;&nbsp;&nbsp;&nbsp;<span class=\"n\">methodIl<\/span><span class=\"p\">.<\/span><span class=\"n\">Emit<\/span><span class=\"p\">(<\/span><span class=\"n\">OpCodes<\/span><span class=\"p\">.<\/span><span class=\"n\">Ret<\/span><span class=\"p\">);<\/span><\/div><div class=\"line\" id=\"LC19\"><span class=\"p\">}<\/span><\/div><\/pre><\/div>\n          \n        <\/div>\n\n        <div class=\"gist-meta\">\n          <a href=\"http://gist.github.com/raw/223142/c34d2a7b2eb8986f9c1a1de7cfaf799c1d1a13ca/gistfile1.cs\" style=\"float:right;\">view raw<\/a>\n          <a href=\"http://gist.github.com/223142#file_gistfile1.cs\" style=\"float:right;margin-right:10px;color:#666\">gistfile1.cs<\/a>\n          <a href=\"http://gist.github.com/223142\">This Gist<\/a> brought to you by <a href=\"http://github.com\">GitHub<\/a>.\n        <\/div>\n      <\/div>\n    \n  \n<\/div>\n')
