import java.util.*;
import Jakarta.util.FixDosOutputStream;
import java.io.*;
public class StatesClause {
public static MMOutput add( String name, boolean inFile,
AstNode me ) {
// Create an MMOutput for this state and insert it into
// the main object. Also, create signatures for each
// state method and represent this internally as a
// nested collective
MMOutput tmp;
String defines = inFile ? MMGlobals.Defines :
MMGlobals.Refines;
String noInfo = MMGlobals.NoInfo;
String method = MMGlobals.Method;
MMOutput m = Main.mmresult;
MMOutput o = new MMOutput().init( name,
MMGlobals.State,
defines );
o.setlines( me.getFirstLineNum(), me.getLastLineNum() );
o.nested.putUnique( "Prepare", new MMOutput().init( "Prepare", method, noInfo ) );
o.nested.putUnique( "Exit", new MMOutput().init( "Exit", method, noInfo ) );
o.nested.putUnique( "Enter", new MMOutput().init( "Enter", method, noInfo ) );
o.nested.putUnique( "Override", new MMOutput().init( "Override", method, noInfo ) );
m.nested.putUnique( name, o );
return o;
}
}