[e-cvs] cvs commit: e/src/safej/javax/swing/text AbstractDocument.safej AbstractDocument.safej AbstractDocument.safej AbstractDocument.safej AbstractDocument.safej AbstractDocument.safej AbstractWriter.safej AsyncBoxView.safej AsyncBoxView.safej AsyncBoxView.safej BoxView.safej ComponentView.safej CompositeView.safej DateFormatter.safej DefaultCaret.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultEditorKit.safej DefaultFormatter.safej DefaultFormatterFactory.safej DefaultHighlighter.safej DefaultHighlighter.safej DefaultStyledDocument.safej DefaultStyledDocument.safej DefaultStyledDocument.safej DefaultStyledDocument.safej DefaultTextUI.safej DocumentFilter.safej DocumentFilter.safej EditorKit.safej ElementIterator.safej FieldView.safej FlowView.safej FlowView.safej GapContent.safej GlyphView.safej GlyphView.safej IconView.safe! j InternationalFormatter.safej JTextComponent.safej JTextComponent.safej JTextComponent.safej LabelView.safej LayeredHighlighter.safej LayeredHighlighter.safej LayoutQueue.safej MaskFormatter.safej NavigationFilter.safej NavigationFilter.safej NumberFormatter.safej ParagraphView.safej PasswordView.safej PlainDocument.safej PlainView.safej Position.safej Segment.safej SimpleAttributeSet.safej StringContent.safej StyleConstants.safej StyleConstants.safej StyleConstants.safej StyleConstants.safej StyleConstants.safej StyleContext.safej StyleContext.safej StyleContext.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej StyledEditorKit.safej TabSet.safej TabStop.safej TableView.safej TableView.safej TableView.safej TextAction.safej Utilities.safej View.safej WrappedPlainView.safej ZoneView.safej

markm@eros.cs.jhu.edu markm@eros.cs.jhu.edu
Thu, 13 Dec 2001 00:01:45 -0500


markm       01/12/13 00:01:45

  Modified:    src      Makefile
               src/jsrc/org/capml/dom Element.java Node.java Text.java
               src/jsrc/org/quasiliteral/term Term.updoc
  Added:       src/esrc/scripts tamingConverter.e
               src/safej/java/awt AWTEvent.safej AWTEventMulticaster.safej
                        AWTKeyStroke.safej AWTPermission.safej
                        AlphaComposite.safej BasicStroke.safej
                        BorderLayout.safej
                        BufferCapabilities$FlipContents.safej
                        BufferCapabilities.safej Button.safej Canvas.safej
                        CardLayout.safej Checkbox.safej CheckboxGroup.safej
                        CheckboxMenuItem.safej Choice.safej Color.safej
                        Component.safej ComponentOrientation.safej
                        Container.safej
                        ContainerOrderFocusTraversalPolicy.safej
                        Cursor.safej DefaultFocusTraversalPolicy.safej
                        DefaultKeyboardFocusManager.safej Dialog.safej
                        Dimension.safej DisplayMode.safej Event.safej
                        EventQueue.safej FileDialog.safej FlowLayout.safej
                        FocusTraversalPolicy.safej Font.safej
                        FontMetrics.safej Frame.safej GradientPaint.safej
                        Graphics.safej Graphics2D.safej
                        GraphicsConfigTemplate.safej
                        GraphicsConfiguration.safej GraphicsDevice.safej
                        GraphicsEnvironment.safej GridBagConstraints.safej
                        GridBagLayout.safej GridLayout.safej Image.safej
                        ImageCapabilities.safej Insets.safej
                        JobAttributes$DefaultSelectionType.safej
                        JobAttributes$DestinationType.safej
                        JobAttributes$DialogType.safej
                        JobAttributes$MultipleDocumentHandlingType.safej
                        JobAttributes$SidesType.safej JobAttributes.safej
                        KeyEventDispatcher.safej KeyboardFocusManager.safej
                        Label.safej List.safej MediaTracker.safej
                        Menu.safej MenuBar.safej MenuComponent.safej
                        MenuItem.safej MenuShortcut.safej
                        PageAttributes$ColorType.safej
                        PageAttributes$MediaType.safej
                        PageAttributes$OrientationRequestedType.safej
                        PageAttributes$OriginType.safej
                        PageAttributes$PrintQualityType.safej
                        PageAttributes.safej Panel.safej Point.safej
                        Polygon.safej PopupMenu.safej PrintJob.safej
                        Rectangle.safej RenderingHints$Key.safej
                        RenderingHints.safej Robot.safej ScrollPane.safej
                        ScrollPaneAdjustable.safej Scrollbar.safej
                        SystemColor.safej TextArea.safej
                        TextComponent.safej TextField.safej
                        TexturePaint.safej Toolkit.safej Window.safej
               src/safej/java/awt/event AWTEventListenerProxy.safej
                        ActionEvent.safej AdjustmentEvent.safej
                        ComponentAdapter.safej ComponentEvent.safej
                        ContainerAdapter.safej ContainerEvent.safej
                        FocusAdapter.safej FocusEvent.safej
                        HierarchyBoundsAdapter.safej HierarchyEvent.safej
                        InputEvent.safej InputMethodEvent.safej
                        InvocationEvent.safej ItemEvent.safej
                        KeyAdapter.safej KeyEvent.safej MouseAdapter.safej
                        MouseEvent.safej MouseMotionAdapter.safej
                        MouseWheelEvent.safej PaintEvent.safej
                        TextEvent.safej WindowAdapter.safej
                        WindowEvent.safej
               src/safej/javax/swing AbstractAction.safej
                        AbstractButton.safej AbstractCellEditor.safej
                        AbstractListModel.safej AbstractSpinnerModel.safej
                        ActionMap.safej BorderFactory.safej
                        Box$Filler.safej Box.safej BoxLayout.safej
                        ButtonGroup.safej CellRendererPane.safej
                        ComponentInputMap.safej DebugGraphics.safej
                        DefaultBoundedRangeModel.safej
                        DefaultButtonModel.safej DefaultCellEditor.safej
                        DefaultComboBoxModel.safej
                        DefaultDesktopManager.safej
                        DefaultFocusManager.safej
                        DefaultListCellRenderer$UIResource.safej
                        DefaultListCellRenderer.safej
                        DefaultListModel.safej
                        DefaultListSelectionModel.safej
                        DefaultSingleSelectionModel.safej
                        FocusManager.safej GrayFilter.safej ImageIcon.safej
                        InputMap.safej InputVerifier.safej
                        InternalFrameFocusTraversalPolicy.safej
                        JApplet.safej JButton.safej JCheckBox.safej
                        JCheckBoxMenuItem.safej JColorChooser.safej
                        JComboBox.safej
                        JComponent$AccessibleJComponent.safej
                        JComponent.safej JDesktopPane.safej JDialog.safej
                        JEditorPane$JEditorPaneAccessibleHypertextSupport$HTMLLink.safej
                        JEditorPane.safej JFileChooser.safej
                        JFormattedTextField$AbstractFormatter.safej
                        JFormattedTextField$AbstractFormatterFactory.safej
                        JFormattedTextField.safej JFrame.safej
                        JInternalFrame$JDesktopIcon.safej
                        JInternalFrame.safej JLabel.safej
                        JLayeredPane.safej JList.safej JMenu.safej
                        JMenuBar.safej JMenuItem.safej JOptionPane.safej
                        JPanel.safej JPasswordField.safej
                        JPopupMenu$Separator.safej JPopupMenu.safej
                        JProgressBar.safej JRadioButton.safej
                        JRadioButtonMenuItem.safej JRootPane.safej
                        JScrollBar.safej JScrollPane.safej JSeparator.safej
                        JSlider.safej JSpinner$DateEditor.safej
                        JSpinner$DefaultEditor.safej
                        JSpinner$ListEditor.safej
                        JSpinner$NumberEditor.safej JSpinner.safej
                        JSplitPane.safej JTabbedPane.safej JTable.safej
                        JTextArea.safej JTextField.safej JTextPane.safej
                        JToggleButton$ToggleButtonModel.safej
                        JToggleButton.safej JToolBar$Separator.safej
                        JToolBar.safej JToolTip.safej
                        JTree$DynamicUtilTreeNode.safej JTree.safej
                        JViewport$ViewListener.safej JViewport.safej
                        JWindow.safej KeyStroke.safej
                        LayoutFocusTraversalPolicy.safej LookAndFeel.safej
                        MenuSelectionManager.safej OverlayLayout.safej
                        Popup.safej PopupFactory.safej
                        ProgressMonitor.safej
                        ProgressMonitorInputStream.safej
                        RepaintManager.safej
                        ScrollPaneLayout$UIResource.safej
                        ScrollPaneLayout.safej SizeRequirements.safej
                        SizeSequence.safej
                        SortingFocusTraversalPolicy.safej
                        SpinnerDateModel.safej SpinnerListModel.safej
                        SpinnerNumberModel.safej Spring.safej
                        SpringLayout$Constraints.safej SpringLayout.safej
                        SwingUtilities.safej Timer.safej
                        ToolTipManager.safej TransferHandler.safej
                        UIDefaults$LazyInputMap.safej
                        UIDefaults$ProxyLazyValue.safej UIDefaults.safej
                        UIManager$LookAndFeelInfo.safej UIManager.safej
                        ViewportLayout.safej
               src/safej/javax/swing/event AncestorEvent.safej
                        CaretEvent.safej ChangeEvent.safej
                        DocumentEvent$EventType.safej
                        EventListenerList.safej
                        HyperlinkEvent$EventType.safej HyperlinkEvent.safej
                        InternalFrameAdapter.safej InternalFrameEvent.safej
                        ListDataEvent.safej ListSelectionEvent.safej
                        MenuDragMouseEvent.safej MenuEvent.safej
                        MenuKeyEvent.safej MouseInputAdapter.safej
                        PopupMenuEvent.safej
                        SwingPropertyChangeSupport.safej
                        TableColumnModelEvent.safej TableModelEvent.safej
                        TreeExpansionEvent.safej TreeModelEvent.safej
                        TreeSelectionEvent.safej UndoableEditEvent.safej
               src/safej/javax/swing/text
                        AbstractDocument$AbstractElement.safej
                        AbstractDocument$BranchElement.safej
                        AbstractDocument$DefaultDocumentEvent.safej
                        AbstractDocument$ElementEdit.safej
                        AbstractDocument$LeafElement.safej
                        AbstractDocument.safej AbstractWriter.safej
                        AsyncBoxView$ChildLocator.safej
                        AsyncBoxView$ChildState.safej AsyncBoxView.safej
                        BoxView.safej ComponentView.safej
                        CompositeView.safej DateFormatter.safej
                        DefaultCaret.safej
                        DefaultEditorKit$BeepAction.safej
                        DefaultEditorKit$CopyAction.safej
                        DefaultEditorKit$CutAction.safej
                        DefaultEditorKit$DefaultKeyTypedAction.safej
                        DefaultEditorKit$InsertBreakAction.safej
                        DefaultEditorKit$InsertContentAction.safej
                        DefaultEditorKit$InsertTabAction.safej
                        DefaultEditorKit$PasteAction.safej
                        DefaultEditorKit.safej DefaultFormatter.safej
                        DefaultFormatterFactory.safej
                        DefaultHighlighter$DefaultHighlightPainter.safej
                        DefaultHighlighter.safej
                        DefaultStyledDocument$AttributeUndoableEdit.safej
                        DefaultStyledDocument$ElementBuffer.safej
                        DefaultStyledDocument$ElementSpec.safej
                        DefaultStyledDocument.safej DefaultTextUI.safej
                        DocumentFilter$FilterBypass.safej
                        DocumentFilter.safej EditorKit.safej
                        ElementIterator.safej FieldView.safej
                        FlowView$FlowStrategy.safej FlowView.safej
                        GapContent.safej GlyphView$GlyphPainter.safej
                        GlyphView.safej IconView.safej
                        InternationalFormatter.safej
                        JTextComponent$AccessibleJTextComponent.safej
                        JTextComponent$KeyBinding.safej
                        JTextComponent.safej LabelView.safej
                        LayeredHighlighter$LayerPainter.safej
                        LayeredHighlighter.safej LayoutQueue.safej
                        MaskFormatter.safej
                        NavigationFilter$FilterBypass.safej
                        NavigationFilter.safej NumberFormatter.safej
                        ParagraphView.safej PasswordView.safej
                        PlainDocument.safej PlainView.safej
                        Position$Bias.safej Segment.safej
                        SimpleAttributeSet.safej StringContent.safej
                        StyleConstants$CharacterConstants.safej
                        StyleConstants$ColorConstants.safej
                        StyleConstants$FontConstants.safej
                        StyleConstants$ParagraphConstants.safej
                        StyleConstants.safej StyleContext$NamedStyle.safej
                        StyleContext$SmallAttributeSet.safej
                        StyleContext.safej
                        StyledEditorKit$AlignmentAction.safej
                        StyledEditorKit$BoldAction.safej
                        StyledEditorKit$FontFamilyAction.safej
                        StyledEditorKit$FontSizeAction.safej
                        StyledEditorKit$ForegroundAction.safej
                        StyledEditorKit$ItalicAction.safej
                        StyledEditorKit$StyledTextAction.safej
                        StyledEditorKit$UnderlineAction.safej
                        StyledEditorKit.safej TabSet.safej TabStop.safej
                        TableView$TableCell.safej TableView$TableRow.safej
                        TableView.safej TextAction.safej Utilities.safej
                        View.safej WrappedPlainView.safej ZoneView.safej
  Log:
  added taming files

Revision  Changes    Path
1.127     +2 -2      e/src/Makefile

Index: Makefile
===================================================================
RCS file: /cvs/e/src/Makefile,v
retrieving revision 1.126
retrieving revision 1.127
diff -u -r1.126 -r1.127
--- Makefile	2001/12/12 06:35:57	1.126
+++ Makefile	2001/12/13 05:01:31	1.127
@@ -7,8 +7,8 @@
 
 # Prefix tagging this release's attributes
 PREFIX=E
-DOTVER=0.8.10delta1
-TAGVER=0_8_10delta1
+DOTVER=0.8.10delta2
+TAGVER=0_8_10delta2
 RELEASE=working
 
 TOP=..



1.1                  e/src/esrc/scripts/tamingConverter.e

Index: tamingConverter.e
===================================================================
#!/usr/bin/env e

def qq__uriGetter := <unsafe:org.quasiliteral.*>

def traceln(str) {
    stderr println(str)
}

def safejSchema := <qq:astro.BaseSchema> new("safej", [
    "LiteralChar",
    "LiteralInteger",
    "LiteralFloat64",
    "LiteralString",
    
    "class",
    "name",
    "method",
    "static",
    "signature",
    "suppress",
    "comment",
    "byproxy",
    "selfless",
    "byconstruction",
    "persistent",
    "safe"])

def safejBuilder := <qq:term.TermBuilder> new(safejSchema)

def qsml2term(qsmlSrc) :any {
    def dom := sml__quasiParser valueMaker(qsmlSrc trim()) substitute([]) minimize()
    dom build(safejBuilder)
}

def optArgs(tree, tagName) :any {
    if (tree getTag() getTagName() <=> tagName) {
        tree getArgs()
    } else {
        null
    }
}

def fqn(tree) :any {
    optArgs(tree, "class") =~ [x ? (optArgs(x, "name") =~ [result])] + _
    result getOptString()
}

def path(fqname) :any {
    def parts := fqname split(".")
    var sep := "/"
    var result := ""
    for part in parts {
        result += sep + part
        if (! (part <=> part toLowerCase())) {
            # If it has any upper case in it, assume it's a class
            # so all further steps are nested classes
            sep := "$"
        }
    }
    # get rid of initial "$"
    result(1, result size()) + ".safej"
}

def openForWriting(dir, path) :any {
    def i := path lastStartOf("/")
    def parentPath := path(0, i+1)
    dir[parentPath] mkdirs()
    dir[path] textWriter()
}

def convert(smlFiledir, safejRootDir) {
    if (smlFiledir isDirectory()) {
        for sub in smlFiledir {
            convert(sub, safejRootDir)
        }
    } else if (smlFiledir getName() =~ `@_.txt`) {
        def tree := qsml2term(smlFiledir getText())
        def fqname := fqn(tree)
        def pathName := path(fqname)
        def out := openForWriting(safejRootDir, pathName)
        try {
            tree prettyPrintOn(out, false)
        } finally {
            out close()
        }
        traceln(pathName)
    }
}

def [smlDirName, safejDirName] := interp getArgs()
convert(<file: smlDirName>, <file: safejDirName>)




1.11      +57 -2     e/src/jsrc/org/capml/dom/Element.java

Index: Element.java
===================================================================
RCS file: /cvs/e/src/jsrc/org/capml/dom/Element.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- Element.java	2001/12/12 06:35:57	1.10
+++ Element.java	2001/12/13 05:01:31	1.11
@@ -138,12 +138,13 @@
     /**
      *
      */
-    public void prettyPrintOn(TextWriter out) throws IOException {
+    public void prettyPrintOn(TextWriter out, boolean quasiFlag)
+      throws IOException {
         out.print("<", myTagName, ">");
         TextWriter nest = out.indent();
         for (int i = 0; i < myChildren.size(); i++) {
             nest.println();
-            ((Node)myChildren.get(i)).prettyPrintOn(out);
+            ((Node)myChildren.get(i)).prettyPrintOn(nest, quasiFlag);
         }
         out.println();
         out.print("</", myTagName, ">");
@@ -163,5 +164,59 @@
             args = builder.with(args, child.build(builder));
         }
         return builder.term(func, args);
+    }
+
+    /**
+     *
+     */
+    /*package*/ Node[] minimize(Node optLeft) {
+        Node[] badChildren = (Node[])myChildren.getArray(Node.class);
+        //The number of goodChildren cannot exceed the original number of
+        //bad ones.
+        Node[] goodChildren = new Node[badChildren.length];
+        int firstBad = 0;
+        int lastGood = -1;
+        while (firstBad < badChildren.length) {
+            Node optLastGoodChild = null;
+            if (lastGood >= 0) {
+                //pop good
+                optLastGoodChild = goodChildren[lastGood--];
+            }
+            //pop bad
+            Node firstBadChild = badChildren[firstBad++];
+            Node[] mins = firstBadChild.minimize(optLastGoodChild);
+            if (null != optLastGoodChild && mins.length == 1) {
+                //A special case: reexamine with newly exposed left
+                //push bad
+                badChildren[--firstBad] = mins[0];
+            } else {
+                for (int i = 0; i < mins.length; i++) {
+                    //push good
+                    goodChildren[++lastGood] = mins[i];
+                }
+            }
+        }
+        ConstList minChildren = ConstList.fromArray(goodChildren);
+        minChildren = minChildren.run(0, lastGood +1);
+        Element minSelf = new Element(myTagName, minChildren);
+
+        if (null == optLeft) {
+            Node[] result = { minSelf };
+            return result;
+        } else if (optLeft instanceof Element) {
+            //Elements don't interact on minimization
+            Node[] result = { optLeft, minSelf };
+            return result;
+        } else {
+            //Only non-whitespace is significant to the left of an Element
+            String data = ((Text)optLeft).getData().trim();
+            if (data.length() == 0) {
+                Node[] result = { minSelf };
+                return result;
+            } else {
+                Node[] result = { new Text(data), minSelf };
+                return result;
+            }
+        }
     }
 }



1.12      +42 -2     e/src/jsrc/org/capml/dom/Node.java

Index: Node.java
===================================================================
RCS file: /cvs/e/src/jsrc/org/capml/dom/Node.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- Node.java	2001/12/10 20:30:08	1.11
+++ Node.java	2001/12/13 05:01:31	1.12
@@ -23,6 +23,7 @@
 import org.erights.e.elib.tables.ConstList;
 import org.erights.e.elib.tables.Iteratable;
 import org.erights.e.elib.tables.Selfless;
+import org.erights.e.elib.prim.E;
 import org.quasiliteral.astro.Astro;
 import org.quasiliteral.astro.AstroBuilder;
 
@@ -143,18 +144,57 @@
      */
     public void printOn(TextWriter out) throws IOException {
         out.print("sml`");
-        prettyPrintOn(out.indent());
+        prettyPrintOn(out.indent(), true);
         out.print("`");
     }
 
     /**
      * Prints pretty printed XML
      */
-    public abstract void prettyPrintOn(TextWriter out) throws IOException;
+    public abstract void prettyPrintOn(TextWriter out, boolean quasiFlag)
+      throws IOException;
 
     /**
      * Used to convert from a Node tree to an Astro (eg, AST or Term) tree.
      */
     public abstract Astro build(AstroBuilder builder);
+
+    /**
+     * Asks this Node to return a minimal form of the optional node to the
+     * left of itself and itself.
+     * <p>
+     * If the node to the left is provided (ie, if 'optLeft' isn't null), then
+     * this node may safely assume that this provided sibling has already been
+     * minimized.
+     * <p>
+     * The minimization is much like XML canonicalization, but depends on an
+     * assumption specific to Minimal-XML: That for an Element that contains
+     * sub-Elements, all pure-whitespace Texts that it also contains may be
+     * gotten rid of.
+     * <p>
+     * The number of nodes returned cannot exceed the number examined.  In
+     * other words, if 'optLeft' is null, only zero or one node may be
+     * returned.  If 'optLeft' isn't null, the number returned may only be
+     * zero, one, or two.
+     *
+     * @return A list of nodes to replace 'optLeft' and itself.
+     */
+    /*package*/ abstract Node[] minimize(Node optLeft);
+
+    /**
+     *
+     */
+    public Node minimize() {
+        Node[] result = minimize(null);
+        if (result.length == 0) {
+            //This can only happen if the original was an empty Text,
+            //so return an empty Text, since we gotta return something
+            return new Text("");
+        } else {
+            E.require(result.length == 1,
+                      "Internal: minimization shouldn't expand: ", this);
+            return result[0];
+        }
+    }
 }
 



1.11      +54 -3     e/src/jsrc/org/capml/dom/Text.java

Index: Text.java
===================================================================
RCS file: /cvs/e/src/jsrc/org/capml/dom/Text.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- Text.java	2001/12/12 06:35:57	1.10
+++ Text.java	2001/12/13 05:01:31	1.11
@@ -21,6 +21,7 @@
 import org.erights.e.elib.prim.StaticMaker;
 import org.erights.e.elib.tables.ConstList;
 import org.erights.e.elib.tables.EmptyTwine;
+import org.erights.e.develop.format.StringHelper;
 import org.quasiliteral.astro.Astro;
 import org.quasiliteral.astro.AstroBuilder;
 
@@ -76,10 +77,18 @@
  */
 public class Text extends Node {
 
+    /**
+     *
+     */
     static public final StaticMaker TextMaker
       = StaticMaker.make(Text.class);
 
     /**
+     *
+     */
+    static private final Node[] NO_NODES = {};
+
+    /**
      * @serial The characters themselves
      */
     private String myData;
@@ -145,9 +154,20 @@
     /**
      *
      */
-    public void prettyPrintOn(TextWriter out) throws IOException {
+    public void prettyPrintOn(TextWriter out, boolean quasiFlag)
+      throws IOException {
         //XXX Have to escape things again
-        out.print(myData);
+        String label = myData;
+        label = StringHelper.replaceAll(label, "<", "&lt;");
+        label = StringHelper.replaceAll(label, ">", "&gt;");
+        label = StringHelper.replaceAll(label, "&", "&amp;");
+        //XXX more entities
+        if (quasiFlag) {
+            label = StringHelper.replaceAll(label, "$", "$$");
+            label = StringHelper.replaceAll(label, "@", "@@");
+            label = StringHelper.replaceAll(label, "`", "``");
+        }
+        out.print(label);
     }
 
     /**
@@ -158,5 +178,36 @@
         return builder.term(builder.leafString(myData, EmptyTwine.THE_ONE),
                             builder.list());
     }
-}
 
+    /**
+     *
+     */
+    /*package*/ Node[] minimize(Node optLeft) {
+        if (null == optLeft) {
+            if (myData.length() == 0) {
+                return NO_NODES;
+            } else {
+                // A single non-empty text node with no siblings is already
+                //minimal
+                Node[] result = { this };
+                return result;
+            }
+        } else if (optLeft instanceof Element) {
+            //Whitespace is not significant after an Element
+            String data = myData.trim();
+            if (data.length() == 0) {
+                Node[] result = { optLeft };
+                return result;
+            } else {
+                Node[] result = { optLeft, new Text(data) };
+                return result;
+            }
+        } else {
+            //this coalesces them, but is can't know whether it should trim
+            //the resulting string.
+            Text left = (Text)optLeft;
+            Node[] result = { new Text(left.myData + myData) };
+            return result;
+        }
+    }
+}



1.15      +204 -10   e/src/jsrc/org/quasiliteral/term/Term.updoc

Index: Term.updoc
===================================================================
RCS file: /cvs/e/src/jsrc/org/quasiliteral/term/Term.updoc,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -r1.14 -r1.15
--- Term.updoc	2001/12/10 16:55:33	1.14
+++ Term.updoc	2001/12/13 05:01:31	1.15
@@ -1,21 +1,17 @@
-    ? (def qq__uriGetter := <unsafe:org.quasiliteral.*>
-    >  def astro__uriGetter := <qq:astro.*>
-    >  def term__uriGetter := <qq:term.*>
-    >  def qterm__uriGetter := <qq:quasiterm.*>)
-    # value: <unsafe:org.quasiliteral.quasiterm.*>
+    ? def qq__uriGetter := <unsafe:org.quasiliteral.*>
+    # value: <unsafe:org.quasiliteral.*>
     
-    ? def dom := sml`<tag>text<foo>x</foo>y</tag>`
+    ? def dom := sml`<tag>text<foo>x@@z</foo>y</tag>`
     # value: sml`<tag>
     #                text
     #                <foo>
-    #                x
-    #            </foo>
+    #                    x@@z
+    #                </foo>
     #                y
     #            </tag>`
     
     ? def miniSchema := <astro:BaseSchema> new("mini", [
     >     "tag",
-    >     "foo", 
     >     "LiteralChar",
     >     "LiteralInteger",
     >     "LiteralFloat64",
@@ -27,9 +23,207 @@
     
     ? def term := dom build(miniBuilder)
     # value: term`tag("text",
-    #                 foo("x"),
+    #                 foo("x@@z"),
     #                 "y")`
     
+    ? def safejSchema := <qq:astro.BaseSchema> new("safej", [
+    >     "LiteralChar",
+    >     "LiteralInteger",
+    >     "LiteralFloat64",
+    >     "LiteralString",
+    >     
+    >     "class",
+    >     "name",
+    >     "method",
+    >     "static",
+    >     "signature",
+    >     "suppress",
+    >     "comment",
+    >     "byproxy",
+    >     "selfless",
+    >     "byconstruction",
+    >     "persistent",
+    >     "safe"])
+    # value: <Schema for safej>
+    
+    ? def safejBuilder := <qq:term.TermBuilder> new(safejSchema)
+    # value: <building Term trees for safej>
+    
+    ? def testSmlFile := <c: "/Documents and Settings/Administrator/Desktop/marcs/safej/tamings/java.awt.AWTPermission.txt">
+    # value: <file:c:/Documents and Settings/Administrator/Desktop/marcs/safej/tamings/java.awt.AWTPermission.txt>
+    
+    ? def dom := sml__quasiParser valueMaker(testSmlFile getText() trim()) substitute([]); null
+    ? dom minimize()
+    # value: sml`<class>
+    #                <name>
+    #                    java.awt.AWTPermission
+    #                </name>
+    #                <method>
+    #                    <static>
+    #                        true
+    #                    </static>
+    #                    <signature>
+    #                        new(String)
+    #                    </signature>
+    #                    <suppress>
+    #                        true
+    #                    </suppress>
+    #                    <comment>
+    #                    </comment>
+    #                </method>
+    #                <method>
+    #                    <static>
+    #                        true
+    #                    </static>
+    #                    <signature>
+    #                        new(String, String)
+    #                    </signature>
+    #                    <suppress>
+    #                        true
+    #                    </suppress>
+    #                    <comment>
+    #                    </comment>
+    #                </method>
+    #                <byproxy>
+    #                </byproxy>
+    #                <selfless>
+    #                </selfless>
+    #                <byconstruction>
+    #                </byconstruction>
+    #                <persistent>
+    #                </persistent>
+    #                <safe>
+    #                    false
+    #                </safe>
+    #                <comment>
+    #                </comment>
+    #            </class>`
+    
+    ? 
+    ? 
+    ? 
+    ? def qsml2term(qsmlSrc) :any {
+    >     def dom := sml__quasiParser valueMaker(qsmlSrc trim()) substitute([]) minimize()
+    >     dom build(safejBuilder)
+    > }
+    # value: <qsml2term>
+    
+    ? def tree := qsml2term(testSmlFile getText())
+    # value: term`class(name("java.awt.AWTPermission"),
+    #                   method(static("true"),
+    #                          signature("new(String)"),
+    #                          suppress("true"),
+    #                          comment),
+    #                   method(static("true"),
+    #                          signature("new(String, String)"),
+    #                          suppress("true"),
+    #                          comment),
+    #                   byproxy,
+    #                   selfless,
+    #                   byconstruction,
+    #                   persistent,
+    #                   safe("false"),
+    #                   comment)`
+    
+    ? def optArgs(tree, tagName) :any {
+    >     if (tree getTag() getTagName() <=> tagName) {
+    >         tree getArgs()
+    >     } else {
+    >         null
+    >     }
+    > }
+    # value: <optArgs>
+    
+    ? def fqn(tree) :any {
+    >     optArgs(tree, "class") =~ [x ? (optArgs(x, "name") =~ [result])] + _
+    >     result getOptString()
+    > }
+    # value: <fqn>
+    
+    ? def name := fqn(tree)
+    # value: "java.awt.AWTPermission"
+    
+    ? name split(".")
+    # value: ["java", "awt", "AWTPermission"]
+    
+    ? 
+    ? def path(fqname) :any {
+    >     def parts := fqname split(".")
+    >     var sep := "/"
+    >     var result := ""
+    >     for part in parts {
+    >         result += sep + part
+    >         if (! (part <=> part toLowerCase())) {
+    >             # If it has any upper case in it, assume it's a class
+    >             # so all further steps are nested classes
+    >             sep := "$"
+    >         }
+    >     }
+    >     # get rid of initial "$"
+    >     result(1, result size()) + ".safej"
+    > }
+    # value: <path>
+    
+    ? path(name)
+    # value: "java/awt/AWTPermission.safej"
+    
+    ? path("foo.bar.Baz.zip.Glorp")
+    # value: "foo/bar/Baz$zip$Glorp.safej"
+    
+    ? def traceln(str) {
+    >     stderr println(str)
+    > }
+    # value: <traceln>
+    
+    ? def openForWriting(dir, path) :any {
+    >     def i := path lastStartOf("/")
+    >     def parentPath := path(0, i+1)
+    >     dir[parentPath] mkdirs()
+    >     dir[path] textWriter()
+    > }
+    # value: <openForWriting>
+    
+    ? 
+    ? 
+    ? def convert(smlFiledir, safejRootDir) {
+    >     if (smlFiledir isDirectory()) {
+    >         for sub in smlFiledir {
+    >             convert(sub, safejRootDir)
+    >         }
+    >     } else if (smlFiledir getName() =~ `@_.txt`) {
+    >         def tree := qsml2term(smlFiledir getText())
+    >         def fqname := fqn(tree)
+    >         def pathName := path(fqname)
+    >         def out := openForWriting(safejRootDir, pathName)
+    >         try {
+    >             tree prettyPrintOn(out, false)
+    >         } finally {
+    >             out close()
+    >         }
+    >         traceln(pathName)
+    >     }
+    > }
+    # value: <convert>
+    
+    ? convert(testSmlFile, <c:/e/src/safej>)
+    java/awt/AWTPermission.safej
+    ? 
+    
+    ? fqn
+    # value: term`"java.awt.AWTPermission"`
+    
+    ? 
+    # value: [term`name("java.awt.AWTPermission")`, term`method(static("true"),
+    #                    signature("new(String)"),
+    #                    suppress("true"),
+    #                    comment)`, term`method(static("true"),
+    #                    signature("new(String, String)"),
+    #                    suppress("true"),
+    #                    comment)`, term`byproxy`, term`selfless`, term`byconstruction`, term`persistent`, term`safe("false")`, term`comment`]
+    
+    ? 
+    
+    ? 
     ? def TermParserMaker := <term:TermParser>
     # value: <unsafe:org.quasiliteral.term.TermParser>
     



1.1                  e/src/safej/java/awt/AWTEvent.safej

Index: AWTEvent.safej
===================================================================
class(name("java.awt.AWTEvent"),
      method(static("true"),
             signature("new(Event)"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(Object, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setSource(Object)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getID()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("paramString()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/AWTEventMulticaster.safej

Index: AWTEventMulticaster.safej
===================================================================
class(name("java.awt.AWTEventMulticaster"),
      method(static("false"),
             signature("componentResized(ComponentEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("componentMoved(ComponentEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("componentShown(ComponentEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("componentHidden(ComponentEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("componentAdded(ContainerEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("componentRemoved(ContainerEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("focusGained(FocusEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("focusLost(FocusEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("keyTyped(KeyEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("keyPressed(KeyEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("keyReleased(KeyEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mouseClicked(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mousePressed(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mouseReleased(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mouseEntered(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mouseExited(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mouseDragged(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("mouseMoved(MouseEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("windowOpened(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowClosing(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowClosed(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowIconified(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowDeiconified(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowActivated(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowDeactivated(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowStateChanged(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowGainedFocus(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("windowLostFocus(WindowEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("actionPerformed(ActionEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("itemStateChanged(ItemEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("adjustmentValueChanged(AdjustmentEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("textValueChanged(TextEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("inputMethodTextChanged(InputMethodEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("caretPositionChanged(InputMethodEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("hierarchyChanged(HierarchyEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("ancestorMoved(HierarchyEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("ancestorResized(HierarchyEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseWheelMoved(MouseWheelEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(ComponentListener, ComponentListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(ContainerListener, ContainerListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(FocusListener, FocusListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(KeyListener, KeyListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(MouseListener, MouseListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(MouseMotionListener, MouseMotionListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(WindowListener, WindowListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(WindowStateListener, WindowStateListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(WindowFocusListener, WindowFocusListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(ActionListener, ActionListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(ItemListener, ItemListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(AdjustmentListener, AdjustmentListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(TextListener, TextListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(InputMethodListener, InputMethodListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(HierarchyListener, HierarchyListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(HierarchyBoundsListener, HierarchyBoundsListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(MouseWheelListener, MouseWheelListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(ComponentListener, ComponentListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(ContainerListener, ContainerListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(FocusListener, FocusListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(KeyListener, KeyListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(MouseListener, MouseListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(MouseMotionListener, MouseMotionListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(WindowListener, WindowListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(WindowStateListener, WindowStateListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(WindowFocusListener, WindowFocusListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(ActionListener, ActionListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(ItemListener, ItemListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(AdjustmentListener, AdjustmentListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(TextListener, TextListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(InputMethodListener, InputMethodListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(HierarchyListener, HierarchyListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(HierarchyBoundsListener, HierarchyBoundsListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(MouseWheelListener, MouseWheelListener)"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment("Used for creating your own components, unlikely to be useful, but left as unsafe; windowEvent handlers probably safe too, but suppressed on general principles"))


1.1                  e/src/safej/java/awt/AWTKeyStroke.safej

Index: AWTKeyStroke.safej
===================================================================
class(name("java.awt.AWTKeyStroke"),
      method(static("false"),
             signature("getAWTKeyStroke(char)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAWTKeyStroke(Character, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAWTKeyStroke(int, int, boolean)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAWTKeyStroke(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAWTKeyStrokeForEvent(KeyEvent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAWTKeyStroke(String)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getKeyChar()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getKeyCode()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getModifiers()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isOnKeyRelease()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getKeyEventType()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("hashCode()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("equals(Object)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/AWTPermission.safej

Index: AWTPermission.safej
===================================================================
class(name("java.awt.AWTPermission"),
      method(static("true"),
             signature("new(String)"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String, String)"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/AlphaComposite.safej

Index: AlphaComposite.safej
===================================================================
class(name("java.awt.AlphaComposite"),
      method(static("false"),
             signature("getInstance(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getInstance(int, float)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("createContext(ColorModel, ColorModel, RenderingHints)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAlpha()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getRule()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("hashCode()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("equals(Object)"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/BasicStroke.safej

Index: BasicStroke.safej
===================================================================
class(name("java.awt.BasicStroke"),
      method(static("true"),
             signature("new(float, int, int, float, float[], float)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(float, int, int, float)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(float, int, int)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(float)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("createStrokedShape(Shape)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLineWidth()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getEndCap()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLineJoin()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getMiterLimit()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getDashArray()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getDashPhase()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("hashCode()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("equals(Object)"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment("REVIEW should probably be pass by copy"))


1.1                  e/src/safej/java/awt/BorderLayout.safej

Index: BorderLayout.safej
===================================================================
class(name("java.awt.BorderLayout"),
      method(static("true"),
             signature("new()"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getHgap()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setHgap(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getVgap()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setVgap(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("addLayoutComponent(Component, Object)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addLayoutComponent(String, Component)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeLayoutComponent(Component)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("minimumLayoutSize(Container)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("preferredLayoutSize(Container)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("maximumLayoutSize(Container)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getLayoutAlignmentX(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLayoutAlignmentY(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("invalidateLayout(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("layoutContainer(Container)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/BufferCapabilities$FlipContents.safej

Index: BufferCapabilities$FlipContents.safej
===================================================================
class(name("java.awt.BufferCapabilities.FlipContents"),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/BufferCapabilities.safej

Index: BufferCapabilities.safej
===================================================================
class(name("java.awt.BufferCapabilities"),
      method(static("true"),
             signature("new(ImageCapabilities, ImageCapabilities, BufferCapabilities.FlipContents)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getFrontBufferCapabilities()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getBackBufferCapabilities()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isPageFlipping()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getFlipContents()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isFullScreenRequired()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isMultiBufferAvailable()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("clone()"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/Button.safej

Index: Button.safej
===================================================================
class(name("java.awt.Button"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getLabel()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setLabel(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setActionCommand(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getActionCommand()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addActionListener(ActionListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeActionListener(ActionListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getActionListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getListeners(Class)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getAccessibleContext()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/Canvas.safej

Index: Canvas.safej
===================================================================
class(name("java.awt.Canvas"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(GraphicsConfiguration)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("paint(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("update(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("createBufferStrategy(int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("createBufferStrategy(int, BufferCapabilities)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getBufferStrategy()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getAccessibleContext()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment("Replaced by JPanel"))


1.1                  e/src/safej/java/awt/CardLayout.safej

Index: CardLayout.safej
===================================================================
class(name("java.awt.CardLayout"),
      method(static("true"),
             signature("new()"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getHgap()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setHgap(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getVgap()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setVgap(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("addLayoutComponent(Component, Object)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("addLayoutComponent(String, Component)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeLayoutComponent(Component)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("preferredLayoutSize(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("minimumLayoutSize(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("maximumLayoutSize(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLayoutAlignmentX(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLayoutAlignmentY(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("invalidateLayout(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("layoutContainer(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("first(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("next(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("previous(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("last(Container)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("show(Container, String)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/Checkbox.safej

Index: Checkbox.safej
===================================================================
class(name("java.awt.Checkbox"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String)"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String, boolean)"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String, boolean, CheckboxGroup)"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String, CheckboxGroup, boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getLabel()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setLabel(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getState()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setState(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSelectedObjects()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getCheckboxGroup()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setCheckboxGroup(CheckboxGroup)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addItemListener(ItemListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeItemListener(ItemListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getItemListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getListeners(Class)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getAccessibleContext()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/CheckboxGroup.safej

Index: CheckboxGroup.safej
===================================================================
class(name("java.awt.CheckboxGroup"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSelectedCheckbox()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getCurrent()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setSelectedCheckbox(Checkbox)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setCurrent(Checkbox)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/CheckboxMenuItem.safej

Index: CheckboxMenuItem.safej
===================================================================
class(name("java.awt.CheckboxMenuItem"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String)"),
             suppress("true"),
             comment),
      method(static("true"),
             signature("new(String, boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getState()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setState(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSelectedObjects()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addItemListener(ItemListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeItemListener(ItemListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getItemListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getListeners(Class)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("paramString()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getAccessibleContext()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/Choice.safej

Index: Choice.safej
===================================================================
class(name("java.awt.Choice"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getItemCount()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("countItems()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getItem(int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("add(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addItem(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("insert(String, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("remove(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("remove(int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeAll()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSelectedItem()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSelectedObjects()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSelectedIndex()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("select(int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("select(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addItemListener(ItemListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeItemListener(ItemListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getItemListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getListeners(Class)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getAccessibleContext()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("false"),
      comment)


1.1                  e/src/safej/java/awt/Color.safej

Index: Color.safej
===================================================================
class(name("java.awt.Color"),
      method(static("true"),
             signature("new(int, int, int)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(int, int, int, int)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(int)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(int, boolean)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(float, float, float)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(float, float, float, float)"),
             suppress("false"),
             comment),
      method(static("true"),
             signature("new(ColorSpace, float[], float)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getRed()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getGreen()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getBlue()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAlpha()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getRGB()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("brighter()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("darker()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("hashCode()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("equals(Object)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("decode(String)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getColor(String)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getColor(String, Color)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getColor(String, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("HSBtoRGB(float, float, float)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("RGBtoHSB(int, int, int, float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getHSBColor(float, float, float)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getRGBComponents(float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getRGBColorComponents(float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getComponents(float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getColorComponents(float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getComponents(ColorSpace, float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getColorComponents(ColorSpace, float[])"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getColorSpace()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("createContext(ColorModel, Rectangle, Rectangle2D, AffineTransform, RenderingHints)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getTransparency()"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/Component.safej

Index: Component.safej
===================================================================
class(name("java.awt.Component"),
      method(static("false"),
             signature("getName()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setName(String)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getParent()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getPeer()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setDropTarget(DropTarget)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getDropTarget()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getGraphicsConfiguration()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getTreeLock()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getToolkit()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("isValid()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isDisplayable()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isVisible()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isShowing()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isEnabled()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setEnabled(boolean)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("enable()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("enable(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("disable()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("isDoubleBuffered()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("enableInputMethods(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setVisible(boolean)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("show()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("show(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("hide()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getForeground()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setForeground(Color)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isForegroundSet()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getBackground()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setBackground(Color)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isBackgroundSet()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getFont()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setFont(Font)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isFontSet()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLocale()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setLocale(Locale)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getColorModel()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getLocation()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLocationOnScreen()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("location()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setLocation(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("move(int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setLocation(Point)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("size()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setSize(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("resize(int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setSize(Dimension)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("resize(Dimension)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getBounds()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("bounds()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setBounds(int, int, int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("reshape(int, int, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setBounds(Rectangle)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getX()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getY()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getWidth()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getHeight()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getBounds(Rectangle)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getSize(Dimension)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getLocation(Point)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("isOpaque()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isLightweight()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getPreferredSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("preferredSize()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getMinimumSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("minimumSize()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getMaximumSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAlignmentX()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAlignmentY()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("doLayout()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("layout()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("validate()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("invalidate()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getGraphics()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getFontMetrics(Font)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setCursor(Cursor)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getCursor()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isCursorSet()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("paint(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("update(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("paintAll(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("repaint()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("repaint(long)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("repaint(int, int, int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("repaint(long, int, int, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("print(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("printAll(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("imageUpdate(Image, int, int, int, int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("createImage(ImageProducer)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("createImage(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("createVolatileImage(int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("createVolatileImage(int, int, ImageCapabilities)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("prepareImage(Image, ImageObserver)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("prepareImage(Image, int, int, ImageObserver)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("checkImage(Image, ImageObserver)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("checkImage(Image, int, int, ImageObserver)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setIgnoreRepaint(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getIgnoreRepaint()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("contains(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("inside(int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("contains(Point)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getComponentAt(int, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("locate(int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getComponentAt(Point)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("deliverEvent(Event)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("dispatchEvent(AWTEvent)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("postEvent(Event)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addComponentListener(ComponentListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeComponentListener(ComponentListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getComponentListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addFocusListener(FocusListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeFocusListener(FocusListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getFocusListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addHierarchyListener(HierarchyListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeHierarchyListener(HierarchyListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getHierarchyListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addHierarchyBoundsListener(HierarchyBoundsListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeHierarchyBoundsListener(HierarchyBoundsListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getHierarchyBoundsListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addKeyListener(KeyListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeKeyListener(KeyListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getKeyListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addMouseListener(MouseListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeMouseListener(MouseListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getMouseListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addMouseMotionListener(MouseMotionListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeMouseMotionListener(MouseMotionListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getMouseMotionListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addMouseWheelListener(MouseWheelListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeMouseWheelListener(MouseWheelListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getMouseWheelListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addInputMethodListener(InputMethodListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeInputMethodListener(InputMethodListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getInputMethodListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getListeners(Class)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getInputMethodRequests()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getInputContext()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("handleEvent(Event)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseDown(Event, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseDrag(Event, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseUp(Event, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseMove(Event, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseEnter(Event, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("mouseExit(Event, int, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("keyDown(Event, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("keyUp(Event, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("action(Event, Object)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removeNotify()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("gotFocus(Event, Object)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("lostFocus(Event, Object)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("isFocusTraversable()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("isFocusable()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setFocusable(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setFocusTraversalKeys(int, Set)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getFocusTraversalKeys(int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("areFocusTraversalKeysSet(int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setFocusTraversalKeysEnabled(boolean)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getFocusTraversalKeysEnabled()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("requestFocus()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("requestFocusInWindow()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("transferFocus()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getFocusCycleRootAncestor()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("isFocusCycleRoot(Container)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("nextFocus()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("transferFocusBackward()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("transferFocusUpCycle()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("hasFocus()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isFocusOwner()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("add(PopupMenu)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(MenuComponent)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("toString()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("list()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("list(PrintStream)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("list(PrintStream, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("list(PrintWriter)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("list(PrintWriter, int)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addPropertyChangeListener(PropertyChangeListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removePropertyChangeListener(PropertyChangeListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getPropertyChangeListeners()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addPropertyChangeListener(String, PropertyChangeListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("removePropertyChangeListener(String, PropertyChangeListener)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getPropertyChangeListeners(String)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setComponentOrientation(ComponentOrientation)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getComponentOrientation()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getAccessibleContext()"),
             suppress("true"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/ComponentOrientation.safej

Index: ComponentOrientation.safej
===================================================================
class(name("java.awt.ComponentOrientation"),
      method(static("false"),
             signature("isHorizontal()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("isLeftToRight()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getOrientation(Locale)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getOrientation(ResourceBundle)"),
             suppress("false"),
             comment),
      byproxy,
      selfless,
      byconstruction,
      persistent,
      safe("true"),
      comment)


1.1                  e/src/safej/java/awt/Container.safej

Index: Container.safej
===================================================================
class(name("java.awt.Container"),
      method(static("true"),
             signature("new()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getComponentCount()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("countComponents()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getComponent(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getComponents()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getInsets()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("insets()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("add(Component)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(String, Component)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("add(Component, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(Component, Object)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("add(Component, Object, int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(int)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("remove(Component)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeAll()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getLayout()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("setLayout(LayoutManager)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("doLayout()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("layout()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("invalidate()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("validate()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("setFont(Font)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getPreferredSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("preferredSize()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getMinimumSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("minimumSize()"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("getMaximumSize()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAlignmentX()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("getAlignmentY()"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("paint(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("update(Graphics)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("print(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("paintComponents(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("printComponents(Graphics)"),
             suppress("true"),
             comment),
      method(static("false"),
             signature("addContainerListener(ContainerListener)"),
             suppress("false"),
             comment),
      method(static("false"),
             signature("removeContainerL