home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 August / PCO0897.ISO / filesbbs / os2 / fp1os2.arj / OS2 / DATA / 49 / C / 0 / F_26836 / JScriptFunctionObject.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-05-15  |  1.9 KB  |  53 lines

  1. class JScriptFunctionObject extends JScriptMethod {
  2.    public static final String NAME = "Function";
  3.    private String aSourceStrg;
  4.  
  5.    public String GetSourceStrg() {
  6.       return this.aSourceStrg;
  7.    }
  8.  
  9.    public JScriptFunctionObject(JScriptConstructor var1) {
  10.       this("", var1, 0L);
  11.    }
  12.  
  13.    public JScriptFunctionObject(String var1, long var2) {
  14.       this(var1, JScriptManager.GetConstructorObjectForMe("Function"), var2);
  15.    }
  16.  
  17.    private JScriptFunctionObject(String var1, JScriptConstructor var2, long var3) {
  18.       super((JScriptModule)null, "(Function)", var2);
  19.       ((JSbxObject)this).SetNativeHandle(var3);
  20.       this.SetSource(var1);
  21.       if (this.aSourceStrg != null && !this.aSourceStrg.equals("")) {
  22.          try {
  23.             ((JScriptMethod)this).SetCodeBlock(JScriptFunctionConstructor.CompileSourceCode(this, this.aSourceStrg));
  24.          } catch (JSbxExceptionBase var5) {
  25.          }
  26.       }
  27.    }
  28.  
  29.    public final void SetSource(String var1) {
  30.       this.aSourceStrg = var1;
  31.    }
  32.  
  33.    public String Property_GetJScript_typeofString(JSbxObjectProperty var1) {
  34.       return "function";
  35.    }
  36.  
  37.    public String GetJScriptString(boolean var1) {
  38.       String var2 = "function anonymous(";
  39.       String[] var3 = ((JScriptMethod)this).GetParameterList();
  40.       if (var3 != null) {
  41.          for(int var4 = 0; var4 < var3.length; ++var4) {
  42.             var2 = var2 + var3[var4];
  43.             if (var4 < var3.length - 1) {
  44.                var2 = var2 + ",";
  45.             }
  46.          }
  47.       }
  48.  
  49.       var2 = var2 + ") { " + this.aSourceStrg + " }";
  50.       return var2;
  51.    }
  52. }
  53.