c# - 在创建/完成封闭类型之前如何使用嵌套类型构建器?
问题描述
我目前正在为 msil 使用的自定义编程语言开发一个编译器,System.Reflection.Emit
我遇到了一个困扰我好几天的问题。我正在创建一个充当模块的类型,因此它包含类型和函数定义。这意味着,我正在创建一个类型,然后将其引用为例如稍后在函数中的局部变量的类型。这就是问题所在,因为我之前定义的类型显然已经完成了,但是当我调用ILGenerator.DefineLocal([type])
它时会抛出TypeLoadException
无法加载封闭类型的说法。我想,这是因为它还没有被创建/完成。
我将如何解决这个问题,同时仍将定义的类型保持为封闭模块类型的 NestedType?
解决方案
推荐阅读
- glsl - 计算向量的余弦
- flutter - 如何用 Flutter 实现“触摸返回通话”?
- javascript - 如何从 jquery timepicker 中获取时间值。?
- windows - 设置不同的双屏模式
- python - 存储和散列密码烧瓶 - Python
- css - 如何在反应应用程序的不同组件上加载不同的 .css 文件?
- firebase - React Native 与 Expo:firebase-admin 是否必要?
- vue.js - vue-select,buefy CSS 不能用于生产 NUXT.JS
- ios - 如何在 SwiftUI 中创建 DropDownMenu?
- c# - 如何在EF核心代码中转换保存在json字段中的嵌套对象