absyntax_utils/search_constant_type.hh
changeset 257 90782e241346
parent 202 da1a8186f86f
child 265 4d222f46f8cc
equal deleted inserted replaced
204:8ffa211b7f9a 257:90782e241346
    65   static ulint_type_name_c    ulint_type_name;
    65   static ulint_type_name_c    ulint_type_name;
    66   static bool_type_name_c     bool_type_name;
    66   static bool_type_name_c     bool_type_name;
    67   static time_type_name_c     time_type_name;
    67   static time_type_name_c     time_type_name;
    68   static int_type_name_c      int_type_name;
    68   static int_type_name_c      int_type_name;
    69 
    69 
    70 /*
       
    71   static constant_real_type_name_c     constant_real_type_name;
       
    72   static constant_int_type_name_c      constant_int_type_name;
       
    73 */
       
    74 /* temporarily here until we remove the st_code_gen.c and il_code_gen.c files... */
    70 /* temporarily here until we remove the st_code_gen.c and il_code_gen.c files... */
    75   static integer_c      integer;
    71   static integer_c      integer;
    76 
    72 
    77   /******************************************************/
    73   /******************************************************/
    78   /* Extensions to the base standard as defined in      */
    74   /* Extensions to the base standard as defined in      */
    79   /* "Safety Software Technical Specification,          */
    75   /* "Safety Software Technical Specification,          */
    80   /*  Part 1: Concepts and Function Blocks,             */
    76   /*  Part 1: Concepts and Function Blocks,             */
    81   /*  Version 1.0 – Official Release"                   */
    77   /*  Version 1.0 – Official Release"                   */
    82   /* by PLCopen - Technical Committee 5 - 2006-01-31    */
    78   /* by PLCopen - Technical Committee 5 - 2006-01-31    */
    83   /******************************************************/
    79   /******************************************************/
    84   static safebool_type_name_c          safebool_type_name;
    80  
       
    81 //  static safebool_type_name_c          safebool_type_name;
       
    82   /* The following is required because the expression (TOD_var - TOD_var) will result in a data type
       
    83    *  (in this case, TIME) that is neither of the expression elements...
       
    84    */
       
    85   static safetime_type_name_c     safetime_type_name;
       
    86   static safetod_type_name_c      safetod_type_name;
       
    87   static safedt_type_name_c       safedt_type_name;
       
    88 
    85 
    89 
    86 
    90 
    87   public:
    91   public:
    88     symbol_c *get_type(symbol_c *constant);
    92     symbol_c *get_type(symbol_c *constant);
    89 
    93 
    95 
    99 
    96     /******************************/
   100     /******************************/
    97     /* B 1.2.1 - Numeric Literals */
   101     /* B 1.2.1 - Numeric Literals */
    98     /******************************/
   102     /******************************/
    99     void *visit(real_c *symbol);
   103     void *visit(real_c *symbol);
       
   104     void *visit(neg_real_c *symbol);
   100     void *visit(integer_c *symbol);
   105     void *visit(integer_c *symbol);
       
   106     void *visit(neg_integer_c *symbol);
   101     void *visit(binary_integer_c *symbol);
   107     void *visit(binary_integer_c *symbol);
   102     void *visit(octal_integer_c *symbol);
   108     void *visit(octal_integer_c *symbol);
   103     void *visit(hex_integer_c *symbol);
   109     void *visit(hex_integer_c *symbol);
   104 
   110 
   105     void *visit(integer_literal_c *symbol);
   111     void *visit(integer_literal_c *symbol);