1 
   2 
   3 
   4 
   5 
   6 
   7 
   8 
   9 
  10 
  11 
  12 
  13 
  14 
  15 
  16 
  17 
  18 
  19 
  20 #ifndef OPAL_UTIL_KEYVAL_LEX_H_
  21 #define OPAL_UTIL_KEYVAL_LEX_H_
  22 
  23 #include "opal_config.h"
  24 
  25 #ifdef malloc
  26 #undef malloc
  27 #endif
  28 #ifdef realloc
  29 #undef realloc
  30 #endif
  31 #ifdef free
  32 #undef free
  33 #endif
  34 
  35 #include <stdio.h>
  36 
  37 int opal_util_keyval_yylex(void);
  38 int opal_util_keyval_init_buffer(FILE *file);
  39 int opal_util_keyval_yylex_destroy(void);
  40 
  41 extern FILE *opal_util_keyval_yyin;
  42 extern bool opal_util_keyval_parse_done;
  43 extern char *opal_util_keyval_yytext;
  44 extern int opal_util_keyval_yynewlines;
  45 extern int opal_util_keyval_yylineno;
  46 
  47 
  48 
  49 
  50 #define YY_STACK_USED 0
  51 #define YY_ALWAYS_INTERACTIVE 0
  52 #define YY_NEVER_INTERACTIVE 0
  53 #define YY_MAIN 0
  54 #define YY_NO_UNPUT 1
  55 #define YY_SKIP_YYWRAP 1
  56 
  57 enum opal_keyval_parse_state_t {
  58     OPAL_UTIL_KEYVAL_PARSE_DONE,
  59     OPAL_UTIL_KEYVAL_PARSE_ERROR,
  60 
  61     OPAL_UTIL_KEYVAL_PARSE_NEWLINE,
  62     OPAL_UTIL_KEYVAL_PARSE_EQUAL,
  63     OPAL_UTIL_KEYVAL_PARSE_SINGLE_WORD,
  64     OPAL_UTIL_KEYVAL_PARSE_VALUE,
  65     OPAL_UTIL_KEYVAL_PARSE_MCAVAR,
  66     OPAL_UTIL_KEYVAL_PARSE_ENVVAR,
  67     OPAL_UTIL_KEYVAL_PARSE_ENVEQL,
  68 
  69     OPAL_UTIL_KEYVAL_PARSE_MAX
  70 };
  71 typedef enum opal_keyval_parse_state_t opal_keyval_parse_state_t;
  72 
  73 #endif