@:value({ col : 0, ln : 0 })new(i:Int, nm:String, ?src:Source, ln:Int = 0, col:Int = 0)
column:Int
id:Int
line:Int
name:String
source:Source