anchor.diff:          when field.struct? then "ObjectArray"
           else (raise "Unsupported field type #{field.name}")
         end
  +    creators_used << gwt_creator unless creators_used.include?(gwt_creator)
   %>
   <% if field.nullable? -%>
       if( null != <%= field.name %> )
  
positive.code: %>    return entity;
    }
  
    private static native com.google.gwt.core.client.JsArrayString newNativeStringArray() /*-{ return []; }-*/;
    private static native com.google.gwt.core.client.JsArrayInteger newNativeIntegerArray() /*-{ return []; }-*/;
    private static native <E extends com.google.gwt.core.client.JavaScriptObject> com.google.gwt.core.client.JsArray<E> newNativeObjectArray() /*-{ return []; }-*/;
  
  <% struct.fields.select{|field| field.gwt?}.each do |field|
    if field.collection?
  
negative.code:   protected static <%= struct.gwt.jso_name %> create( <%= struct.fields.collect {|field| "#{annotated_type(field, :gwt, :boundary, :final => true) } #{field.name}" }.join(", ") %> )
    {
      final <%= struct.gwt.jso_name %> entity = com.google.gwt.core.client.JavaScriptObject.createObject().cast();
  <%
    creators_used = []
  
    struct.fields.each do |field|
      converted_value = Proc.new do |var|
        case
          when field.struct? then "(#{field.referenced_struct.gwt.jso_name})#{var}"
  