ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

slang_preprocess.c File Reference

Go to the source code of this file.

Data Structures

struct  pp_symbols
struct  pp_symbol
struct  pp_cond_ctx
struct  pp_cond_stack
struct  pp_ext
struct  pp_state
struct  expand_state

Defines

#define PP_ANNOTATE   0
#define EXECUTION_STACK_SIZE   1024
#define PUSH(x)
#define POP(x)
#define BINARY(op)
#define BINARYDIV(op)
#define UNARY(op)
#define OP_END   0
#define OP_PUSHINT   1
#define OP_LOGICALOR   2
#define OP_LOGICALAND   3
#define OP_OR   4
#define OP_XOR   5
#define OP_AND   6
#define OP_EQUAL   7
#define OP_NOTEQUAL   8
#define OP_LESSEQUAL   9
#define OP_GREATEREQUAL   10
#define OP_LESS   11
#define OP_GREATER   12
#define OP_LEFTSHIFT   13
#define OP_RIGHTSHIFT   14
#define OP_ADD   15
#define OP_SUBTRACT   16
#define OP_MULTIPLY   17
#define OP_DIVIDE   18
#define OP_MODULUS   19
#define OP_PLUS   20
#define OP_MINUS   21
#define OP_NEGATE   22
#define OP_COMPLEMENT   23
#define EXP_END   0
#define EXP_EXPRESSION   1
#define CONDITION_STACK_SIZE   64
#define IS_FIRST_ID_CHAR(x)   (((x) >= 'a' && (x) <= 'z') || ((x) >= 'A' && (x) <= 'Z') || (x) == '_')
#define IS_NEXT_ID_CHAR(x)   (IS_FIRST_ID_CHAR(x) || ((x) >= '0' && (x) <= '9'))
#define IS_WHITE(x)   ((x) == ' ' || (x) == '\n')
#define IS_NULL(x)   ((x) == '\0')
#define SKIP_WHITE(x)   do { while (IS_WHITE(*(x))) (x)++; } while (GL_FALSE)
#define ESCAPE_TOKEN   0
#define TOKEN_END   0
#define TOKEN_DEFINE   1
#define TOKEN_UNDEF   2
#define TOKEN_IF   3
#define TOKEN_ELSE   4
#define TOKEN_ELIF   5
#define TOKEN_ENDIF   6
#define TOKEN_ERROR   7
#define TOKEN_PRAGMA   8
#define TOKEN_EXTENSION   9
#define TOKEN_LINE   10
#define PARAM_END   0
#define PARAM_PARAMETER   1
#define BEHAVIOR_REQUIRE   1
#define BEHAVIOR_ENABLE   2
#define BEHAVIOR_WARN   3
#define BEHAVIOR_DISABLE   4
#define PRAGMA_NO_PARAM   0
#define PRAGMA_PARAM   1

Functions

static GLvoid grammar_error_to_log (slang_info_log *log)
GLboolean _slang_preprocess_version (const char *text, GLuint *version, GLuint *eaten, slang_info_log *log)
static GLvoid pp_annotate (slang_string *output, const char *fmt,...)
static GLboolean execute_expression (slang_string *output, const byte *code, GLuint *pi, GLint *result, slang_info_log *elog)
static GLuint execute_expressions (slang_string *output, grammar eid, const byte *expr, GLint results[2], slang_info_log *elog)
static GLvoid pp_symbols_init (pp_symbols *self)
static GLvoid pp_symbols_free (pp_symbols *)
static GLvoid pp_symbol_init (pp_symbol *self)
static GLvoid pp_symbol_free (pp_symbol *self)
static GLvoid pp_symbol_reset (pp_symbol *self)
static pp_symbolpp_symbols_push (pp_symbols *self)
static GLboolean pp_symbols_erase (pp_symbols *self, pp_symbol *symbol)
static pp_symbolpp_symbols_find (pp_symbols *self, const char *name)
static GLboolean pp_cond_stack_push (pp_cond_stack *self, slang_info_log *elog)
static GLvoid pp_cond_stack_reevaluate (pp_cond_stack *self)
static GLvoid pp_ext_disable_all (pp_ext *self)
static GLvoid pp_ext_init (pp_ext *self, const struct gl_extensions *extensions)
static GLboolean pp_ext_set (pp_ext *self, const char *name, GLboolean enable)
static void pp_pragmas_init (struct gl_sl_pragmas *pragmas)
static GLboolean pp_pragma (struct gl_sl_pragmas *pragmas, const char *pragma, const char *param)
static GLvoid pp_state_init (pp_state *self, slang_info_log *elog, const struct gl_extensions *extensions)
static GLvoid pp_state_free (pp_state *self)
static GLboolean expand_defined (expand_state *e, slang_string *buffer)
static GLboolean expand (expand_state *, pp_symbols *)
static GLboolean expand_symbol (expand_state *e, pp_symbol *symbol)
static GLboolean parse_if (slang_string *output, const byte *prod, GLuint *pi, GLint *result, pp_state *state, grammar eid)
static GLboolean preprocess_source (slang_string *output, const char *source, grammar pid, grammar eid, slang_info_log *elog, const struct gl_extensions *extensions, struct gl_sl_pragmas *pragmas)
GLboolean _slang_preprocess_directives (slang_string *output, const char *input, slang_info_log *elog, const struct gl_extensions *extensions, struct gl_sl_pragmas *pragmas)

Variables

static LONGSTRING const charslang_pp_directives_syn = "/srv/doxygen/reactos/dll/3rdparty/mesa32/src/shader/slang/slang_preprocess.c" 2
static LONGSTRING const charslang_pp_expression_syn = "/srv/doxygen/reactos/dll/3rdparty/mesa32/src/shader/slang/slang_preprocess.c" 2
static LONGSTRING const charslang_pp_version_syn = "/srv/doxygen/reactos/dll/3rdparty/mesa32/src/shader/slang/slang_preprocess.c" 2

Detailed Description

slang preprocessor

Author:
Michal Krol

Definition in file slang_preprocess.c.


Generated on Sun May 27 2012 04:59:35 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.