Files
kraken/tests/test_typeInfr.krak
2015-05-16 12:05:23 -04:00

52 lines
905 B
Plaintext

import io:*
import mem:*
import vector:*
fun retMessage(): char* {
return "I do like type inference"
}
fun id<T>(in: T): T { return in; }
obj CustomObj {
var data: int;
}
obj CustomObjTmplt<T> {
var data: T;
}
fun inFun<T>(in: T):T {
var src: CustomObjTmplt<T>
src.data = in
var dst = src
return dst.data
}
fun main():int {
var str = "hello"
var avar = 9
var mul = 9 * 3
var add = 9 + 3
var flt = 9.3
var msg = retMessage()
var fromTemplateFun = id(11);
var vec = new<vector<int>>()->construct()
vec->addEnd(avar)
var src: CustomObj
src.data = 80
var dst = src
var throughTemp = inFun("complicated");
println(str)
println(avar)
println(mul)
println(add)
println(flt)
println(msg)
println(fromTemplateFun)
println(vec->at(0))
println(dst.data)
println(throughTemp)
return 0
}