Clazz.declarePackage("java.util.regex"); Clazz.load(["java.lang.IllegalArgumentException"],"java.util.regex.PatternSyntaxException",null,function(){ c$=Clazz.decorateAsClass(function(){ this.desc=null; this.pattern=null; this.index=-1; Clazz.instantialize(this,arguments); },java.util.regex,"PatternSyntaxException",IllegalArgumentException); Clazz.makeConstructor(c$, function(desc,pattern,index){ Clazz.superConstructor(this,java.util.regex.PatternSyntaxException,[]); this.desc=desc; this.pattern=pattern; this.index=index; },"~S,~S,~N"); Clazz.defineMethod(c$,"getPattern", function(){ return this.pattern; }); Clazz.overrideMethod(c$,"getMessage", function(){ var s=this.desc; if(this.index>=0){ s+=" near index "+this.index; }s+="\r\n"+this.pattern; if(this.index>=0){ s+="\r\n"; for(var i=0;i