parameters: (self, t)
docstring: Evaluates a C preprocessor expression.
  
          This is done by converting it to a Python equivalent and
          eval()ing it in the C preprocessor namespace we use to
          track #define values.
docstring_summary: Evaluates a C preprocessor expression.
docstring_tokens: Evaluates a C preprocessor expression .
function: def eval_expression(self, t):
          """
          Evaluates a C preprocessor expression.
  
          This is done by converting it to a Python equivalent and
          eval()ing it in the C preprocessor namespace we use to
          track #define values.
          """
          t = CPP_to_Python(' '.join(t[1:]))
          try:
              return eval(t, self.cpp_namespace)
          except (NameError, TypeError, SyntaxError):
              return 0
function_tokens: def eval_expression ( self , t ) : t = CPP_to_Python ( ' ' . join ( t [ 1 : ] ) ) try : return eval ( t , self . cpp_namespace ) except ( NameError , TypeError , SyntaxError ) : return 0