Trulla 1.4.2
dotnet add package Trulla --version 1.4.2
NuGet\Install-Package Trulla -Version 1.4.2
此命令旨在在 Visual Studio 的包管理器控制台中使用,因为它使用 NuGet 模块的 Install-Package 版本。
<PackageReference Include="Trulla" Version="1.4.2" />
对于支持 PackageReference 的项目,请将此 XML 节点复制到项目文件中以引用此包。
paket add Trulla --version 1.4.2
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获取支持。
#r "nuget: Trulla, 1.4.2"
#r 指令可用于 F# Interactive 和 Polyglot Notebooks。将其复制到交互式工具或脚本的源代码中,以引用此包。
// Install Trulla as a Cake Addin #addin nuget:?package=Trulla&version=1.4.2 // Install Trulla as a Cake Tool #tool nuget:?package=Trulla&version=1.4.2
NuGet 团队不提供对此客户端的支持。请联系其 维护者 以获取支持。
<p align="center"> <img src='./artwork/Original Logo.png' alt='logo' width='300' /> </p>
Trulla 模板类似于 Handlebars 或 Mustache 模板,但具有静态类型和安全性!
Trulla 方法
- 提供带有
- 模板参数
- 循环
- 条件
- 从给定模板推断出模型类型。
- 用户提供模型实例以渲染最终模板。
示例和用法
通用模板语法
查看更多示例,请参阅 测试!
for 循环(带分隔符)
- 当 chars = ["a"; "b"; "c"] 时,这将渲染 'abc'
{{for c in chars}}{{c}}{{end}}
- 给定项之间的分隔符为给定 chars = ["a"; "b"; "c"] 时,此将渲染 'a;b;c'
{{for x in numbers|;}}{{x.id}}{{end}}
if/else
- 根据 order.isActive 的值打印 "订单处于活动状态。" 或 "订单已关闭。"
- else 部分是可选的。
Order is {{if order.isActive}}active{{else}}closed{{end}}.
工作原理内部
Trulla是用F#实现的。它基本上包含了一个“真正”的语言所具有的一切,例如:
- 解析器
- 无类型AST
- 带有求解器的类型推断
- 带类型AST
- 代码生成
如果您想了解更多信息,请查看(内部)[./src/docs/Internals.md]。
产品 | 版本 兼容的以及额外的计算目标框架版本。 |
---|---|
.NET | net5.0 已计算。 net5.0-windows 已计算。 net6.0 已计算。 net6.0-android 已计算。 net6.0-ios 已计算。 net6.0-maccatalyst 已计算。 net6.0-macos 已计算。 net6.0-tvos 已计算。 net6.0-windows 已计算。 net7.0 已计算。 net7.0-android 已计算。 net7.0-ios 已计算。 net7.0-maccatalyst 已计算。 net7.0-macos 已计算。 net7.0-tvos 已计算。 net7.0-windows 已计算。 net8.0 已计算。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。 |
.NET Core | netcoreapp2.0 已计算。 netcoreapp2.1 已计算。 netcoreapp2.2 已计算。 netcoreapp3.0 已计算。 netcoreapp3.1 已计算。 |
.NET Standard | netstandard2.0 是兼容的。 netstandard2.1 已计算。 |
.NET Framework | net461 已计算。 net462 已计算。 net463 已计算。 net47 已计算。 net471 已计算。 net472 已计算。 net48 已计算。 net481 已计算。 |
MonoAndroid | monoandroid 已计算。 |
MonoMac | monomac 已计算。 |
MonoTouch | monotouch 已计算。 |
Tizen | tizen40 已计算。 tizen60 已计算。 |
Xamarin.iOS | xamarinios 已计算。 |
Xamarin.Mac | xamarinmac 已计算。 |
Xamarin.TVOS | xamarintvos 已计算。 |
Xamarin.WatchOS | xamarinwatchos 已计算。 |
-
.NETStandard 2.0
- FSharp.Core (>= 6.0.7)
NuGet 包
此包没有被任何 NuGet 包使用。
GitHub 代码仓库
此包没有被任何流行的 GitHub 代码仓库使用。
版本 | 下载 | 最后更新 |
---|---|---|
1.4.2 | 3,920 | 10/20/2023 |
1.4.1 | 179 | 10/18/2023 |
1.4.0-preview01 | 133 | 10/17/2023 |
1.3.0 | 162 | 9/18/2023 |
1.3.0-preview9 | 130 | 9/17/2023 |
1.3.0-preview8 | 129 | 9/17/2023 |
1.3.0-preview7 | 124 | 9/15/2023 |
1.3.0-preview6 | 132 | 9/15/2023 |
1.3.0-preview5 | 128 | 9/15/2023 |
1.3.0-preview4 | 122 | 9/15/2023 |
1.3.0-preview2 | 1,178 | 9/15/2023 |
1.3.0-preview18 | 102 | 9/18/2023 |
1.3.0-preview17 | 119 | 9/18/2023 |
1.3.0-preview16 | 97 | 9/18/2023 |
1.3.0-preview15 | 110 | 9/18/2023 |
1.3.0-preview14 | 114 | 9/18/2023 |
1.3.0-preview13 | 121 | 9/18/2023 |
1.3.0-preview12 | 103 | 9/18/2023 |
1.3.0-preview11 | 115 | 9/17/2023 |
1.3.0-preview10 | 119 | 9/17/2023 |
1.3.0-preview1 | 129 | 9/15/2023 |
1.2.1 | 168 | 9/13/2023 |
1.1.1 | 204 | 4/24/2023 |
1.1.0 | 183 | 4/24/2023 |
1.4.0
- 使用 TheBlunt 而不是 FParsec
1.3.0
- 添加 C# 源生成器
1.2.1
- 添加可选分隔符到 `for` 循环
1.1.1
- 移除 "实验性" 通知
1.1.0
- 重访 / 重命名为 "Trulla"
1.0.1
#5: 不要引用 FSharp.Core 7
#6: 构造函数参数的稳定排序
1.0.0
首次发布。