public void add(AstBase n)
        {
            if (n instanceof AstFormalParameters)
                {
                m_formalParameters = (AstFormalParameters) n;
                }
            else if (n instanceof AstDeclaration)
                {
                m_declaration = (AstDeclaration) n;
                }
            else if (n instanceof AstPredicateList)
                {
                m_predicateList = (AstPredicateList) n;
                }
            else if (n instanceof AstVector)
                {
                if (m_predicateList == null)
                    {
                    m_predicateList = new AstPredicateList();
                    }
                int i;
                List v = ((AstVector) n).m_list;
                for (i = 0; i < v.size(); i++)
                    {
                    m_predicateList.add((AstBase) v.get(i));
                    }
                }
            else
                {
                super.add(n);
                }
        }