fuck you wall i own sci.math<I>own: http:///* ###############################################################################




/*
###############################################################################

Copyright (c) 2006 MeAmI.org All rights reserved.


Project : english_adjectives
Filename : /home/mehl/lloop/examples/external_symbols/include/
english_adjectives__go.h
Author : Michel MEHL
Description : Parse code for symbol 'go'
GSPC Version : 1.1
Note : Generated File. Do not modify.



###############################################################################
*/


#ifndef __ENGLISH_ADJECTIVES__GO_H__
#define __ENGLISH_ADJECTIVES__GO_H__

#include <stdarg.h>
#include "gsp__Symbol.h"




namespace english_adjectives {

class Parser;
class go;
class goFactory;
class run;








class LLOOP_DLL goComposite
{
private:

bool m_bComponentsDetached;

protected:

unsigned long m_uNbComponents;
go **m_apComponents;
unsigned long m_uCapacity;

public:

goComposite();
virtual ~goComposite();

unsigned long getNbComponents() const;
void addComponent(go* pComponent);
void addComponent(go* pComponent, unsigned long uIterLevel, ...);
go* lastComponent();
go* getComponent(unsigned long uIndex);
go* getComponentAt(unsigned long uIterLevel, ...);
go& operator()(unsigned int uIterLevel, ...);
go* ptr(unsigned int uIterLevel, ...);
void setComponent(go* pComponent, unsigned long uIndex);
void setComponentAt(go* pComponent, unsigned long uIterLevel, ...);

void detachAllComponents();
void destroyAllComponents();
void destroyComponentAt(unsigned long uIterLevel, ...);

protected:

void ensureComponentCapacity(unsigned long uMinCapacity);
go* getComponentAt(unsigned long uIterLevel, va_list arg);
};











class LLOOP_DLL go : public virtual gsp::Symbol,
public goComposite

{
friend class goFactory;

private:

static const unsigned long NB_RULES;
static const unsigned long RULES[1][3];
static const unsigned long NB_FIRSTS;
static const unsigned long FIRSTS[1 + 1];

protected:

static goFactory* ms_factory;

static int m_iMaxOccurrences;
static int m_iMinOccurrences;

protected:









unsigned char m_cWsFlag[3 + 1][20];
unsigned short m_uNbWs[3 + 1];

private:

run* m_prun;



public:

static int maxOccurrences();
static int minOccurrences();
static void maxOccurrences(int iMaxOcc);
static void minOccurrences(int iMinOcc);

public:

go();
virtual ~go();
universal::String getSymbolName() const;

static bool is_a(gsp::Symbol* pSymbol);
static goFactory& factory();
static void setFactory(goFactory* pNewFactory);
virtual gsp::Symbol& getRightByIndex(unsigned long uIndex);

run* getrun();
run& runRef();

void setrun(run* prun);



virtual bool parseSymbol(gsp::LLParser& parser, gsp::Symbol*&
rpReturnSymbol, gsp::Symbol* pParent = NULL);

bool parseSymbol(english_adjectives::Parser& parser, go*&
rpReturnSymbol, gsp::Symbol* pParent = NULL);
bool parseRoot(english_adjectives::Parser& parser, go*&
pReturnSymbol, gsp::Symbol* pParent = NULL, bool bBreakOff = true);

virtual bool parse(std::istream& is, std::ostream& os, gsp::Symbol*
pParent = NULL, bool bExpectEOF = false, bool bDeactivatePreprocessing
= false) ;
virtual bool parse(std::istream& is, gsp::Symbol* pParent = NULL,
bool bExpectEOF = false, bool bDeactivatePreprocessing = false);
virtual bool expand(std::ostream& os, bool bRestoreWS = true);
virtual bool backtrace(std::ostream& os);
virtual bool visit(gsp::Visitor& visitor, gsp::Symbol*&
pReturnSymbol);
virtual bool test(std::ostream& os, bool bVerbose = false);

universal::String expand(bool bTrimFirstWhitespaces = true, bool
bRestoreWS = true);

virtual bool isToken() const;
virtual bool isNonTerminal() const;

virtual void reset();

protected:

go* reduce(english_adjectives::Parser& parser);
go* reduce(const long lRuleRank, english_adjectives::Parser&
parser);

void initRule();

private:

unsigned long getNbRules() const;
unsigned long getNbSymbolsInRule(long lRuleRank) const;
unsigned long getSymbolDescription(long lRuleRank, long lSymbolRank)
const;
virtual const unsigned long *getFirstsDescriptions() const;
};

















class LLOOP_DLL goFactory : public gsp::SymbolFactory
{

private:

static const unsigned long MAX_SPARE;
unsigned long m_uAmountSpare;
go* m_spare[1];

unsigned long m_uStatisticNbCreated;

public:

goFactory();
virtual ~goFactory();
virtual go* create();
unsigned long getNbCreated() const;
virtual void destroy(go*& pInstance);
} ;

}

#endif

.


Quantcast