F# 如何将生成的代码添加到类型提供程序
我有F#函数 它在F#(.fs文件)上生成代码。 我想写一个类型提供程序,它运行generateCode()并按照提供的方式提供生成的函数 例如,我的函数生成:F# 如何将生成的代码添加到类型提供程序,f#,type-providers,F#,Type Providers,我有F#函数 它在F#(.fs文件)上生成代码。 我想写一个类型提供程序,它运行generateCode()并按照提供的方式提供生成的函数 例如,我的函数生成: module Calc open Operations let Calculate a b = add a b 我想让类型提供程序提供这样的功能: type MyType = MyTypeProvider<args> sum = MyType.Calculate a b type MyType=MyTypeProvid
module Calc
open Operations
let Calculate a b = add a b
我想让类型提供程序提供这样的功能:
type MyType = MyTypeProvider<args>
sum = MyType.Calculate a b
type MyType=MyTypeProvider
sum=MyType。计算a和b
UPD
主要问题是将生成的代码添加到程序集,然后获取函数名。不幸的是,创建类型提供程序并不是那么简单。类型提供程序不需要生成源代码,而是需要构建特定接口的实现,然后生成F#quotes(这是一种表示源代码的数据结构,如LINQ表达式树)
有关实现类型提供程序的良好教程,请参阅Michael Newton和后续文章。不幸的是,创建类型提供程序并不是那么简单。类型提供程序不需要生成源代码,而是需要构建特定接口的实现,然后生成F#quotes(这是一种表示源代码的数据结构,如LINQ表达式树)
有关实现类型提供程序的良好教程,请参阅Michael Newton和后续文章。我不需要代码生成器,我需要类型提供程序,因为它可以在运行时运行我的函数,并提供生成的函数。我不需要代码生成器,我需要类型提供程序,因为它可以在运行时运行我的函数,并提供生成的函数。
type MyType = MyTypeProvider<args>
sum = MyType.Calculate a b