All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.gwt.angular.client.Util Maven / Gradle / Ivy

There is a newer version: 1.1.3
Show newest version
package com.google.gwt.angular.client;

import java.util.Iterator;

import elemental.json.JsonValue;
import elemental.util.ArrayOf;

public class Util {
  /**
   * Only safe to do with JavaScriptObjects.
   */
  public static native  T reinterpret_cast(Object o) /*-{
      return o;
  }-*/;

  public static String toJson(Object o) {
    JsonValue value = reinterpret_cast(o);
    return value.toJson();
  }

  public static  T make(Object factory) {
    return ((Factory) factory).create();
  }
  
  public static  Iterable iterable(final ArrayOf array) {
	    return new Iterable() {
	      public Iterator iterator() {
	        return new Iterator() {
	          int next = 0;

	          public boolean hasNext() {
	            return next < array.length();
	          }

	          public S next() {
	            return array.get(next++);
	          }

	          public void remove() {
	          }
	        };
	      }
	    };
	  }
}