class PositionObject { PointF position = "1;2" // new Vector2f(1, 2) } type PointF wraps Vector2f create { if(it != null) { val String[] split = it.split(";") if(split.length == 2) { new Vector2f(Float.valueOf(split.get(0)), Float.valueOf(split.get(1))) } } new Vector2f } convert { it.x + ";" + it.y }