IronPython 中的对象初始化
Object initialization in IronPython
嗯,需要将 c# 代码翻译成 IronPython。当前的问题是找到像这样翻译初始化的最佳方法,例如:
case SomeObject.FieldCase: new SomeObject { Width = 600, Height = 400 }.Export(model_, stream); break;
你有什么想法让它变得相似吗?我只对对象初始化代码感兴趣,case 语句被翻译了。对于翻译,我们使用 Roslyn,因此我们可以获得所有语法节点。在其他情况下,我会这样做:
model = new Model;
model.SomeField = field;
model.SomeField2 = field2;
但是这种方式开发起来不是那么容易
找到。 IronPython 可以使用 c# 类,使用导入和更改初始化程序调用
value= new SomeObject { Name = name }
到
value = SomeObject(Name = name)
嗯,需要将 c# 代码翻译成 IronPython。当前的问题是找到像这样翻译初始化的最佳方法,例如:
case SomeObject.FieldCase: new SomeObject { Width = 600, Height = 400 }.Export(model_, stream); break;
你有什么想法让它变得相似吗?我只对对象初始化代码感兴趣,case 语句被翻译了。对于翻译,我们使用 Roslyn,因此我们可以获得所有语法节点。在其他情况下,我会这样做:
model = new Model;
model.SomeField = field;
model.SomeField2 = field2;
但是这种方式开发起来不是那么容易
找到。 IronPython 可以使用 c# 类,使用导入和更改初始化程序调用
value= new SomeObject { Name = name }
到
value = SomeObject(Name = name)