Tag: 模板

在Pebble Template Engine中解析字符串模板而不是文件

有没有可能使用卵石模板引擎从字符串建立一个模板,而不必提供一个文件名? val engine = PebbleEngine.Builder().build() val writer = StringWriter(); engine.getTemplate("test.html").evaluate(writer); 而不是提供test.html ,我将如何提供以下格式的模板? val template = "Hello {{world}} – {{count}} – {{tf}}" 我目前在Pebble 2.2.1上 <!– Pebble –> <dependency> <groupId>com.mitchellbosecke</groupId> <artifactId>pebble</artifactId> <version>2.2.1</version> </dependency> 基于我收到的答案的解决方案 : val context = HashMap<String, Any>() … val engine = PebbleEngine.Builder().loader(StringLoader()).build(); val writer = StringWriter(); engine.getTemplate(template).evaluate(writer, context); println(writer.toString());

静态类型的语言与特性和函数重载?

是否存在任何语言: 是静态(强烈)键入 支持泛型(模板) 支持特性/多重继承/接口委派 允许函数重载(也是继承的成员) 基本上,在伪代码中,我想这样做: class Template<SomeType> { void function(SomeType i) {} } class Composed extends Template<int>, Template<double> { }; Composed composed; composed.function(3); //calls function(int) composed.function(2.5); //calls function(double) 从维基列表http://en.wikipedia.org/wiki/Multiple_inheritance#Implementations我试图用下面的编程语言编写代码(我还包括最新的尚未发布的1.0版本(2013年)的语言,如Kotlin,锡兰): C ++几乎可能,但不能解决组合变量的重载函数 Scala编译错误:特征继承两次; 即使被间接继承欺骗,它仍然会产生错误; 另请参阅其他人在Scala中关于多个泛型混合继承的问题 埃菲尔编译错误:没有函数重载 锡兰特征不能有变量(也没有保护成员,所以没有把数据存储在派生类中的技巧,锡兰特征是无用的) Fantom没有泛型/模板 Kotlin编译错误:超类型出现两次; 代表团看起来是独一无二的,但没有用处,因为可以既不访问受保护的成员,也不访问委派的变量 铁锈无功能重载; 性状不能存储数据; 特征不能有定义的方法(与身体) – 正在处理的问题; OCaml编译错误:没有函数重载; 它也没有检查我的函数的参数类型,所以如何“静态类型”它真的是? 卷曲编译错误:没有函数重载; 它也不检查函数体,除非被调用,那么“静态类型”是如何呢? 是根本编译还是解释? Gosu是一个不好的笑话,它根本不可用:不能用一个方法编写和实现简单的接口(错误:ClassFormatError:非法字段修饰符)。 谁实际上使用这种语言? 顺便说一句:我想这个问题,当我试图把听众的Java支持到单独的类(在许多类中有:List <ListenerType> … […]

在串的美元的符号字符

什么是在字符串文字中添加$字符的最简洁的方法? 到目前为止,我所提出的最佳解决方案是“”“$ {”$“} …”“”,这对我来说很难看。

如何在Kotlin字符串模板中嵌入循环

我们可以像在Kotlin字符串模板中一样简单地嵌套表达式运算符: "List ${if (list.isEmpty()) "is empty" else "has ${list.size} items"}." 但是for或不是表达式,不能像这样嵌套在模板中: "<ol>${for (item in list) "<li>$item"}</ol>" 所以我正在寻找方便的方式来使用大模板内的循环。

动态评估Kotlin中的模板化字符串

假设我有以下一段Kotlin代码: fun main(args: Array<String>) { val a = "test" println(args.first()) } 如果我传递一个参数$a ,输出将是$a 。 据我所知,Kotlin通过生成编译输出的代码来处理字符串模板,大概是使用StringBuilder。 有没有一些方法来评估不在源代码中的字符串在当前上下文中的模板? 字符串模板是非常有用的,能够评估来自动态上下文的表达式(比如配置文件)是非常好的,但据我所知,这是不可能的。 缺乏这个,对此有什么好的方法? 调用脚本引擎?