qse/ase/test/awk/Awk.java

98 lines
1.6 KiB
Java

/*
* $Id: Awk.java,v 1.15 2006-11-28 15:09:03 bacon Exp $
*/
package ase.test.awk;
public class Awk extends ase.awk.StdAwk
{
private String[] cin;
private int cin_no;
private String[] cout;
private int cout_no;
public Awk () throws ase.awk.Exception
{
super ();
try { addBuiltinFunction ("sin", 1, 1); }
catch (ase.awk.Exception e) { System.out.println (">>>>>> CANNOT ADD sin"); }
try { addBuiltinFunction ("xxx", 1, 1); }
catch (ase.awk.Exception e) { System.out.println (">>>>>> CANNOT ADD xxx"); }
}
public Object xxx (Object[] args)
{
System.out.println ("BFN_XXX");
return null;
}
public Object sin (Object[] args)
{
System.out.println ("BFN_SIN: " + (String)args[0]);
return args[0];
}
protected String[] getInputConsoleNames ()
{
String[] cin = new String[3];
cin[0] = "c1.txt";
cin[1] = "c2.txt";
cin[2] = "c3.txt";
return cin;
}
protected String[] getOutputConsoleNames ()
{
String[] cout = new String[3];
cout[0] = "c4.txt";
cout[1] = "c5.txt";
cout[2] = "";
return cout;
}
protected String[] getSourceNames ()
{
String[] cout = new String[1];
cout[0] = "t.awk";
return cout;
}
/*
protected String getDeparsedSourceName ()
{
return "";
}
*/
protected int getMaxParseDepth ()
{
return 50;
}
protected int getMaxRunDepth ()
{
return 50;
}
public static void main (String[] args)
{
Awk awk = null;
try
{
awk = new Awk ();
awk.parse ();
awk.run ();
}
catch (ase.awk.Exception e)
{
System.out.println ("ase.awk.Exception - " + e.getMessage());
}
finally
{
if (awk != null) awk.close ();
}
}
}