ShellBanner
System:Linux MiraNet 3.0.0-14-generic-pae #23-Ubuntu SMP Mon Nov 21 22:07:10 UTC 2011 i686
Software:Apache. PHP/5.3.6-13ubuntu3.10
ID:uid=65534(nobody) gid=65534(nogroup) groups=65534(nogroup)
Safe Mode:OFF
Open_Basedir:OFF
Freespace:25.66 GB of 70.42 GB (36.44%)
MySQL: ON MSSQL: OFF Oracle: OFF PostgreSQL: OFF Curl: OFF Sockets: ON Fetch: OFF Wget: ON Perl: ON
Disabled Functions: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

/ usr/ src/ courier-0.66.1/ maildrop/ - drwxrwxrwx

Directory:
Viewing file:     recipe.h (2.24 KB)      -rw-rw-rw-
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#ifndef recipe_h
#define    recipe_h


#include    "config.h"
#include    "recipenode.h"
#include    "token.h"

class Lexer;
class Token;

//////////////////////////////////////////////////////////////////////////
//
// Class Recipe - parsed structure of a recipe file.
// This class reads tokens from the Lexer class, and arranges them in a
// logical structure that represents the recipe file.  The Recipe object
// maints a list of RecipeNode objects, which roughly represent individual
// statements, and elements of a recipe file.  There is more or less a
// one-to-one relationship between Tokens and Recipenodes.  Usually one
// RecipeNode is created for each token - but not always.  The RecipeNode
// objects are automatically created by the Recipe object when ParseRecipe()
// is called to translate the tokens returned by the Lexer class into
// the RecipeNode structure.  When the Recipe object is destroyed, it
// automatically destroys all RecipeNode objects it has allocated.
// The RecipeNode objects are created using a simple recursive-descent
// parser.
//
// The ExecuteRecipe() function actually starts the ball rolling by
// calling the Evaluate() function of the first RecipeNode object in the
// structure.
//
//////////////////////////////////////////////////////////////////////////


#include    "../dbobj.h"

class Recipe {

    RecipeNode *firstNode, *lastNode;    // All nodes in this recipe.
    RecipeNode *topNode;            // Topmost node.

    RecipeNode *alloc(RecipeNode::RecipeNodeType);

    Lexer    *lex;
    Token    cur_tok;

public:
    Recipe();
    ~Recipe();

    int ParseRecipe(Lexer &);
    void ExecuteRecipe();
    void errmsg(RecipeNode &, const char *);

#ifdef    DbObj
    DbObj    gdbm_file;
#endif

private:
    // This is, essentially, a recursive-descent parser that builds
    // the RecipeNode tree.
    RecipeNode *ParseExpr()
        {
            return (ParseAssign());
        }
    RecipeNode *ParseAssign();
    RecipeNode *ParseLogicalOr();
    RecipeNode *ParseLogicalAnd();
    RecipeNode *ParseComparison();
    RecipeNode *ParseBitwiseOr();
    RecipeNode *ParseBitwiseAnd();
    RecipeNode *ParseAddSub();
    RecipeNode *ParseMultDiv();
    RecipeNode *ParseStrRegExp();
    RecipeNode *ParseStatementList();
    RecipeNode *ParseStatement();
    RecipeNode *ParseSubStatement();
    RecipeNode *ParseString();
    RecipeNode *ParseElement();
} ;

#endif
Command:
Quick Commands:
Upload:
[OK] Max size: 100MB
PHP Filesystem: <@ Ú
Search File:
regexp
Create File:
Overwrite [OK]
View File:
Mass Defacement:
[+] Main Directory: [+] Defacement Url:
LmfaoX Shell - Private Build [BETA] - v0.1 -; Generated: 0.3058 seconds