@Retention(value=RUNTIME)
@Target(value={CONSTRUCTOR,METHOD,FIELD,TYPE})
@Documented
public @interface JsExport
JsExport marks a constructor, static method, or static field as creating a an unobfuscated alias
in the global scope. JsExport acts as an entry-point from the standpoint of the optimizer,
and all code reachable from an exported method is also considered live, so use with care.