dbfdg 3 MZ @sddlZddlmZddlmZiZyddlmZeeWnek rPYnXej dded<ded <x"ej j D]Z e j d rte ee <qtW[ iZd d Zd dZejdkrejedS)N)model)FFIError)_get_common_typesFILEZ_IO_FILEZ_BoolboolZ_tc Csyt|Stk rtj||}t|ts:|d}}nZ|tjjkrXtj|d}}n<|dkrpt d|fn$||krt d|f|j |\}}t|tj st ||ft|<||fSXdS)Nrzset-unicode-neededzFThe Windows type %r is only available after you call ffi.set_unicode()zUnsupported type: %r. Please look at http://cffi.readthedocs.io/en/latest/cdef.html#ffi-cdef-limitations and file an issue if you think this type should really be supported.) _CACHEKeyError COMMON_TYPESget isinstancestrr PrimitiveTypeALL_PRIMITIVE_TYPESrZparse_type_and_qualsZBaseTypeByIdentityAssertionError)parserZ commontypeZcdeclresultZqualsr#/usr/lib64/python3.6/commontypes.pyresolve_common_types&       rc CsRtjddddgtjdtjdtjtjdgd d dgdd d d d d d d d d d S)NZ_UNICODE_STRINGZLengthZ MaximumLengthZBufferzunsigned shortZwchar_trzUNICODE_STRING *zconst UNICODE_STRING *zset-unicode-needed) ZUNICODE_STRINGZPUNICODE_STRINGZPCUNICODE_STRINGZTBYTEZTCHARZLPCTSTRZPCTSTRZLPTSTRZPTSTRZPTBYTEZPTCHARrr)rZ StructTyperZ PointerTyperrrrwin_common_types7s& rZwin32)sysrerrorrr Z _cffi_backendr ImportErrorZ unknown_typerrZ_typeendswithrrrplatformupdaterrrrs&