parameters: (item, filetext, docstring)
docstring: Check the 'ifdef' context
      -------------------------
  
      If there is an 'ifdef' requirement write it to the data.
docstring_summary: Check the 'ifdef' context
      -------------------------
docstring_tokens: Check the ifdef context -------------------------
function: def check_ifdef(item, filetext, docstring):
      """
      Check the 'ifdef' context
      -------------------------
  
      If there is an 'ifdef' requirement write it to the data.
      """
      ifdefstring = r'(\#ifdef((.*?)\n(.*?)\n*))\#endif'
      require_reg = re.compile(r'HAVE\_((.*?)*)\n')
      # every doc in an #ifdef
      ifdefs = re.findall(ifdefstring, filetext, re.DOTALL)
      for ifitem in ifdefs:
          for str_ifdef in ifitem:
              initems = re.findall(docstring, str_ifdef, re.DOTALL)
              for initem in initems:
                  if item == initem:
                      features = require_reg.search(str_ifdef)
                      return features.group()
function_tokens: def check_ifdef ( item , filetext , docstring ) : ifdefstring = r'(\#ifdef((.*?)\n(.*?)\n*))\#endif' require_reg = re . compile ( r'HAVE\_((.*?)*)\n' ) # every doc in an #ifdef ifdefs = re . findall ( ifdefstring , filetext , re . DOTALL ) for ifitem in ifdefs : for str_ifdef in ifitem : initems = re . findall ( docstring , str_ifdef , re . DOTALL ) for initem in initems : if item == initem : features = require_reg . search ( str_ifdef ) return features . group ( )