class_docstr: The main top-level class that you instantiate once, or once per module.
  
  Example usage:
  
      ffi = FFI()
      ffi.cdef("""
          int printf(const char *, ...);
      """)
  
      C = ffi.dlopen(None)   # standard library
      -or-
      C = ffi.verify()  # use a C compiler: verify the decl above is right
  
      C.printf("hello, %s!\n", ffi.new("char[]", "world"))
class_docstr_tok: ["The","main","top-level","class","that","you","instantiate","once",",","or","once","per","module",".","Example","usage",":","ffi","=","FFI","(",")","ffi.cdef","(","``","''","''","int","printf","(","const","char","*",",","...",")",";","``","''","''",")","C","=","ffi.dlopen","(","None",")","#","standard","library","-or-","C","=","ffi.verify","(",")","#","use","a","C","compiler",":","verify","the","decl","above","is","right","C.printf","(","``","hello",",","%","s","!","\\n","''",",","ffi.new","(","``","char","[","]","''",",","``","world","''",")",")"]
docstr: Windows: if 'enabled_flag' is True, enable the UNICODE and
  _UNICODE defines in C, and declare the types like TCHAR and LPTCSTR
  to be (pointers to) wchar_t.  If 'enabled_flag' is False,
  declare these types to be (pointers to) plain 8-bit characters.
  This is mostly for backward compatibility; you usually want True.
code: def set_unicode(self, enabled_flag):
      """Windows: if 'enabled_flag' is True, enable the UNICODE and
      _UNICODE defines in C, and declare the types like TCHAR and LPTCSTR
      to be (pointers to) wchar_t.  If 'enabled_flag' is False,
      declare these types to be (pointers to) plain 8-bit characters.
      This is mostly for backward compatibility; you usually want True.
      """
      if self._windows_unicode is not None:
          raise ValueError("set_unicode() can only be called once")
      enabled_flag = bool(enabled_flag)
      if enabled_flag:
          self.cdef(
              "typedef wchar_t TBYTE;"
              "typedef wchar_t TCHAR;"
              "typedef const wchar_t *LPCTSTR;"
              "typedef const wchar_t *PCTSTR;"
              "typedef wchar_t *LPTSTR;"
              "typedef wchar_t *PTSTR;"
              "typedef TBYTE *PTBYTE;"
              "typedef TCHAR *PTCHAR;"
          )
      else:
          self.cdef(
              "typedef char TBYTE;"
              "typedef char TCHAR;"
              "typedef const char *LPCTSTR;"
              "typedef const char *PCTSTR;"
              "typedef char *LPTSTR;"
              "typedef char *PTSTR;"
              "typedef TBYTE *PTBYTE;"
              "typedef TCHAR *PTCHAR;"
          )
      self._windows_unicode = enabled_flag
  
imports: import sys, types
  from .lock import allocate_lock
  from .error import CDefError
  from .None import model
label_desc: Use image node_id 35 for calling the FFI obj's underlying member method code with example usage: obj.set_unicode(enabled_flag) without return types