    if @struct.id isnt val.id
     return off
 
-   o = new @struct null, @views, i
+   #TODO copy in here
+   o = new @struct null, views, i
    o.copyFrom val
    return on
 

 Class

Array = (struct, length) ->
 class Class
  constructor: ->
   @struct = struct
   @length = length
   @buffer = new ArrayBuffer @struct.bytes * @length
   @views = []
   for t, i in @struct.types
    @views[i] = new ArrayTypes[t] @buffer,
     @struct.offsets[i] * @length
     @length


   tcase = (k.substr 0, 1).toUpperCase() + k.substr 1
  do (i) ->
   Class.prototype["set#{tcase}"] = (p, val) ->
    views[i][p] = val
    null

   Class.prototype["get#{tcase}"] = (p) ->
    views[i][p]

 new Class()

