package net.jangaroo.utils; /** * All built-in ActionScript 3 types. */ public enum AS3Type { BOOLEAN("Boolean", "false"), NUMBER("Number", "NaN"), INT("int", "0"), UINT("uint", "0"), STRING("String", "null"), ARRAY("Array", "null"), REG_EXP("RegExp", "null"), DATE("Date", "null"), ANY("*", "undefined"), VOID("void", "undefined"); public final String name; public final String defaultValue; AS3Type(String name, String defaultValue) { this.name = name; this.defaultValue = defaultValue; } public static AS3Type typeByName(String name) { if (name != null) { for (AS3Type value : values()) { if (value.toString().equals(name)) { return value; } } } return null; } public static String getDefaultValue(String typeName) { AS3Type type = typeName != null ? AS3Type.typeByName(typeName) : AS3Type.ANY; return type == null ? "null" : type.defaultValue; } @Override public String toString() { return name; } }