self
(using add
)This is an easy way to provide a free insertion point in an existing template.
var t = new Template
t.add("""void main(void) {""")
var tdecl = t.new_sub # used to group declarations
tdecl.add("int i; ")
t.add("i = 1; ")
tdecl.add("int j; ")
t.add("j = i + 1; ")
t.add("\}")
assert t.write_to_string == """void main(void) {int i; int j; i = 1; j = i + 1; }"""
# Return a new basic template that is automatically added in `self` (using `add`)
#
# This is an easy way to provide a free insertion point in an existing template.
#
# var t = new Template
# t.add("""void main(void) {""")
# var tdecl = t.new_sub # used to group declarations
# tdecl.add("int i; ")
# t.add("i = 1; ")
# tdecl.add("int j; ")
# t.add("j = i + 1; ")
# t.add("\}")
# assert t.write_to_string == """void main(void) {int i; int j; i = 1; j = i + 1; }"""
fun new_sub: Template
do
var res = new Template
add res
return res
end
lib/template/template.nit:163,2--181,4