2014-01-18 74 views
0

希望使用groovy爲Asciidoctor標記編寫groovy.text.Template。到目前爲止:render()返回一個字符串,我們如何將該字符串轉換爲實現Writable接口的對象,我只是不明白它。也不能看到如何使用/讀取/存儲返回「可寫」的對象要麼:-P如何在Groovy中編寫可編程接口

回答

1

您可以使用the asWritable method on a Closure得到一個可寫返回,即:

Writable process() 
{ 
    def output = asciidoctor.render(this.payload, asciidoctorJOptions); 
    { w -> w.println output }.asWritable() 
} 
+0

優秀蒂姆。嘗試'寫作'但沒有喜悅,所以你的想法看起來很有用。 – jnorthr

+0

@jnorthr酷:-)如果它的工作,你可以[接受它作爲一個答案](http://meta.stackexchange.com/a/5235/156393)?手指交叉:-) –