absyntax_utils/search_base_type.hh
changeset 706 31553c22f318
parent 625 c0bda77b37a0
child 793 268bf4ca5fa1
equal deleted inserted replaced
705:f2323f79252e 706:31553c22f318
    53   private:
    53   private:
    54     symbol_c *current_type_name;
    54     symbol_c *current_type_name;
    55     bool is_array;
    55     bool is_array;
    56     bool is_subrange;
    56     bool is_subrange;
    57     bool is_enumerated;
    57     bool is_enumerated;
       
    58     bool is_fb;
    58 
    59 
    59   public:
    60   public:
    60     search_base_type_c(void);
    61     search_base_type_c(void);
    61 
    62 
    62   public:
    63   public:
    63     symbol_c *get_basetype_decl(symbol_c *symbol);
    64     symbol_c *get_basetype_decl(symbol_c *symbol);
    64     symbol_c *get_basetype_id  (symbol_c *symbol);
    65     symbol_c *get_basetype_id  (symbol_c *symbol);
    65     bool type_is_subrange(symbol_c* type_decl);
    66     bool type_is_subrange(symbol_c* type_decl);
    66     bool type_is_enumerated(symbol_c* type_decl);
    67     bool type_is_enumerated(symbol_c* type_decl);
       
    68     bool type_is_fb(symbol_c* type_decl);
    67 
    69 
    68   public:
    70   public:
    69   /*************************/
    71   /*************************/
    70   /* B.1 - Common elements */
    72   /* B.1 - Common elements */
    71   /*************************/
    73   /*************************/
   114     void *visit(ulint_type_name_c *symbol);
   116     void *visit(ulint_type_name_c *symbol);
   115     void *visit(real_type_name_c *symbol);
   117     void *visit(real_type_name_c *symbol);
   116     void *visit(lreal_type_name_c *symbol);
   118     void *visit(lreal_type_name_c *symbol);
   117     void *visit(date_type_name_c *symbol);
   119     void *visit(date_type_name_c *symbol);
   118     void *visit(tod_type_name_c *symbol);
   120     void *visit(tod_type_name_c *symbol);
   119     void *visit(dt_type_name_c *symbol)	;
   121     void *visit(dt_type_name_c *symbol);
   120     void *visit(byte_type_name_c *symbol);
   122     void *visit(byte_type_name_c *symbol);
   121     void *visit(word_type_name_c *symbol);
   123     void *visit(word_type_name_c *symbol);
   122     void *visit(dword_type_name_c *symbol);
   124     void *visit(dword_type_name_c *symbol);
   123     void *visit(lword_type_name_c *symbol);
   125     void *visit(lword_type_name_c *symbol);
   124     void *visit(string_type_name_c *symbol);
   126     void *visit(string_type_name_c *symbol);
   143     void *visit(safeulint_type_name_c *symbol);
   145     void *visit(safeulint_type_name_c *symbol);
   144     void *visit(safereal_type_name_c *symbol);
   146     void *visit(safereal_type_name_c *symbol);
   145     void *visit(safelreal_type_name_c *symbol);
   147     void *visit(safelreal_type_name_c *symbol);
   146     void *visit(safedate_type_name_c *symbol);
   148     void *visit(safedate_type_name_c *symbol);
   147     void *visit(safetod_type_name_c *symbol);
   149     void *visit(safetod_type_name_c *symbol);
   148     void *visit(safedt_type_name_c *symbol)	;
   150     void *visit(safedt_type_name_c *symbol);
   149     void *visit(safebyte_type_name_c *symbol);
   151     void *visit(safebyte_type_name_c *symbol);
   150     void *visit(safeword_type_name_c *symbol);
   152     void *visit(safeword_type_name_c *symbol);
   151     void *visit(safedword_type_name_c *symbol);
   153     void *visit(safedword_type_name_c *symbol);
   152     void *visit(safelword_type_name_c *symbol);
   154     void *visit(safelword_type_name_c *symbol);
   153     void *visit(safestring_type_name_c *symbol);
   155     void *visit(safestring_type_name_c *symbol);
   220     void *visit(structure_element_initialization_list_c *symbol);
   222     void *visit(structure_element_initialization_list_c *symbol);
   221   /*  structure_element_name ASSIGN value */
   223   /*  structure_element_name ASSIGN value */
   222     void *visit(structure_element_initialization_c *symbol);
   224     void *visit(structure_element_initialization_c *symbol);
   223   /*  string_type_name ':' elementary_string_type_name string_type_declaration_size string_type_declaration_init */
   225   /*  string_type_name ':' elementary_string_type_name string_type_declaration_size string_type_declaration_init */
   224   /*
   226   /*
   225   SYM_REF4(string_type_declaration_c,	string_type_name,
   227   SYM_REF4(string_type_declaration_c, string_type_name,
   226   					elementary_string_type_name,
   228   					elementary_string_type_name,
   227   					string_type_declaration_size,
   229   					string_type_declaration_size,
   228   					string_type_declaration_init) // may be == NULL!
   230   					string_type_declaration_init) // may be == NULL!
   229   */
   231   */
   230     void *visit(string_type_declaration_c *symbol);
   232     void *visit(string_type_declaration_c *symbol);