home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 May / PCO_5_97.ISO / FilesBBS / OS2 / NETREXX.ARJ / NETREXX.ZIP / NetRexx / qtime.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-02-17  |  4.3 KB  |  148 lines

  1. import java.util.Date;
  2. import netrexx.lang.NoOtherwiseException;
  3. import netrexx.lang.Rexx;
  4. import netrexx.lang.RexxIO;
  5. import netrexx.lang.RexxParse;
  6. import netrexx.lang.RexxSet;
  7.  
  8. public class qtime {
  9.    private static final char[] $$2 = new char[]{'\u0001', '\n', '\u0002', '\u0000', '\u0001', '\u0000'};
  10.    private static final Rexx $$5 = new Rexx("");
  11.    private static final char[] $$6 = new char[]{'\u0001', '\n', '\u0005', '\u0000', '\u0000', '\u0000', '\u0001', '\u0000', '\u0000'};
  12.    private static final char[] $$8 = new char[]{'\u0002', '\u0001', ':', '\n', '\u0001', '\u0000', '\u0002', '\u0001', ':', '\n', '\u0001', '\u0001', '\u0001', '\n', '\u0001', '\u0002', '\u0000'};
  13.    private static final Rexx $$10 = new Rexx(29);
  14.    private static final Rexx $$11 = new Rexx(1);
  15.    private static final Rexx $$12 = new Rexx(5);
  16.    private static final Rexx $$13 = new Rexx(32);
  17.    private static final Rexx $$14 = new Rexx(2);
  18.    private static final Rexx $$15 = new Rexx(12);
  19.    private static final Rexx $$16 = new Rexx(0);
  20.    private static final Rexx $$17 = new Rexx(60);
  21.    private static final Rexx $$18 = new Rexx(4);
  22.    private static final Rexx $$21 = new Rexx(10);
  23.    private static final Rexx $$22 = new Rexx(15);
  24.    private static final Rexx $$23 = new Rexx(20);
  25.    private static final Rexx $$24 = new Rexx(25);
  26.    private static final Rexx $$25 = new Rexx(30);
  27.    private static final Rexx $$26 = new Rexx(35);
  28.    private static final Rexx $$27 = new Rexx(40);
  29.    private static final Rexx $$28 = new Rexx(45);
  30.    private static final Rexx $$29 = new Rexx(50);
  31.    private static final Rexx $$30 = new Rexx(55);
  32.    // $FF: renamed from: $0 java.lang.String
  33.    private static final String field_0 = "qtime.nrx";
  34.  
  35.    public static void main(String[] var0) {
  36.       Object var1 = null;
  37.       Object var3 = null;
  38.       Object var4 = null;
  39.       Object var5 = null;
  40.       Object var6 = null;
  41.       Rexx var10 = new Rexx(var0);
  42.       Rexx[] var11 = new Rexx[2];
  43.       RexxParse.parse(var10, $$2, var11);
  44.       Rexx var14 = var11[0];
  45.       if (var14.OpEq((RexxSet)null, new Rexx('?'))) {
  46.          tell();
  47.       } else if (!var14.OpEq((RexxSet)null, $$5)) {
  48.          RexxIO.Say(new Rexx("The only valid argument to QTIME is \"?\".  The word"));
  49.          RexxIO.Say((new Rexx("that you supplied (\"")).OpCc((RexxSet)null, var14).OpCc((RexxSet)null, new Rexx("\") has been ignored.")));
  50.          tell();
  51.       }
  52.  
  53.       Rexx var2 = new Rexx("");
  54.       var2.getnode(new Rexx((byte)0)).leaf = new Rexx("");
  55.       var2.getnode(new Rexx((byte)1)).leaf = new Rexx(" just gone");
  56.       var2.getnode(new Rexx((byte)2)).leaf = new Rexx(" just after");
  57.       var2.getnode(new Rexx((byte)3)).leaf = new Rexx(" nearly");
  58.       var2.getnode(new Rexx((byte)4)).leaf = new Rexx(" almost");
  59.       Rexx[] var12 = new Rexx[2];
  60.       RexxParse.parse(new Rexx(String.valueOf(new Date())), $$6, var12);
  61.       Rexx var15 = var12[1];
  62.       Rexx[] var13 = new Rexx[3];
  63.       RexxParse.parse(var15, $$8, var13);
  64.       Rexx var16 = var13[0];
  65.       Rexx var17 = var13[1];
  66.       Rexx var20 = var13[2];
  67.       if (var20.OpGt((RexxSet)null, $$10)) {
  68.          var17 = var17.OpAdd((RexxSet)null, $$11);
  69.       }
  70.  
  71.       Rexx var7 = var17.OpRem((RexxSet)null, $$12);
  72.       Rexx var8 = (new Rexx("It's")).OpCc((RexxSet)null, var2.getnode(var7).leaf);
  73.       if (var17.OpGt((RexxSet)null, $$13)) {
  74.          var16 = var16.OpAdd((RexxSet)null, $$11);
  75.       }
  76.  
  77.       var17 = var17.OpAdd((RexxSet)null, $$14);
  78.       if ((new Rexx(var16.OpRem((RexxSet)null, $$15).OpEq((RexxSet)null, $$16))).OpAnd((RexxSet)null, new Rexx(var17.OpRem((RexxSet)null, $$17).OpLtEq((RexxSet)null, $$18)))) {
  79.          if (var16.OpEq((RexxSet)null, $$15)) {
  80.             RexxIO.Say(var8.OpCcblank((RexxSet)null, new Rexx("Noon.")));
  81.          } else {
  82.             RexxIO.Say(var8.OpCcblank((RexxSet)null, new Rexx("Midnight.")));
  83.          }
  84.  
  85.          System.exit(0);
  86.       } else {
  87.          var17 = var17.OpSub((RexxSet)null, var17.OpRem((RexxSet)null, $$12));
  88.          if (var16.OpGt((RexxSet)null, $$15)) {
  89.             var16 = var16.OpSub((RexxSet)null, $$15);
  90.          } else if (var16.OpEq((RexxSet)null, $$16)) {
  91.             var16 = new Rexx((byte)12);
  92.          }
  93.  
  94.          if (!var17.OpEq((RexxSet)null, $$16)) {
  95.             if (var17.OpEq((RexxSet)null, $$17)) {
  96.                var17 = new Rexx((byte)0);
  97.             } else if (var17.OpEq((RexxSet)null, $$12)) {
  98.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("five past"));
  99.             } else if (var17.OpEq((RexxSet)null, $$21)) {
  100.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("ten past"));
  101.             } else if (var17.OpEq((RexxSet)null, $$22)) {
  102.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("a quarter past"));
  103.             } else if (var17.OpEq((RexxSet)null, $$23)) {
  104.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("twenty past"));
  105.             } else if (var17.OpEq((RexxSet)null, $$24)) {
  106.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("twenty-five past"));
  107.             } else if (var17.OpEq((RexxSet)null, $$25)) {
  108.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("half past"));
  109.             } else if (var17.OpEq((RexxSet)null, $$26)) {
  110.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("twenty-five to"));
  111.             } else if (var17.OpEq((RexxSet)null, $$27)) {
  112.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("twenty to"));
  113.             } else if (var17.OpEq((RexxSet)null, $$28)) {
  114.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("a quarter to"));
  115.             } else if (var17.OpEq((RexxSet)null, $$29)) {
  116.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("ten to"));
  117.             } else {
  118.                if (!var17.OpEq((RexxSet)null, $$30)) {
  119.                   throw new NoOtherwiseException();
  120.                }
  121.  
  122.                var8 = var8.OpCcblank((RexxSet)null, new Rexx("five to"));
  123.             }
  124.          }
  125.  
  126.          Rexx var9 = (new Rexx("one two three four five six")).OpCcblank((RexxSet)null, new Rexx("seven eight nine ten eleven twelve "));
  127.          var8 = var8.OpCcblank((RexxSet)null, var9.word(var16));
  128.          if (var17.OpEq((RexxSet)null, $$16)) {
  129.             var8 = var8.OpCcblank((RexxSet)null, new Rexx("o'clock"));
  130.          }
  131.  
  132.          RexxIO.Say(var8.OpCc((RexxSet)null, new Rexx('.')));
  133.          System.exit(0);
  134.       }
  135.    }
  136.  
  137.    public static void tell() {
  138.       RexxIO.Say(new Rexx("QTIME will display the current time in real English."));
  139.       RexxIO.Say(new Rexx("Call without any arguments to display the time, or with"));
  140.       RexxIO.Say(new Rexx("\"?\" to display this information."));
  141.       RexxIO.Say(new Rexx("British English idioms are used in this program."));
  142.       RexxIO.Say((Rexx)null);
  143.    }
  144.  
  145.    private qtime() {
  146.    }
  147. }
  148.