úÎ!ú|'      !"#$%&Safe=?xcffib(Create and sanatize a python identifier.xcffib@Make an Expr out of a string like "foo.bar" describing the name.xcffib$Make an attribute access, i.e. self. string.   None%X'xcffibðstNeedsPad is whether or not a type_pad() is needed. As near as I can tell the conditions are: 1. a list was unpacked 2. a struct was unpacked ListFontsWithInfoReply is an example of a struct which has lots of this type of thing.(xcffibpA "base" X type, i.e. one described in baseTypeInfo; first arg is the struct.unpack string, second is the size.)xcffib…A composite type, i.e. a Struct or Union created by XCB. First arg is the extension that defined it, second is the name of the type.!xcffibäGenerate the code for a set of X headers. Note that the code is generated in dependency order, NOT in the order you pass them in. Thus, you get a string (a suggested filename) along with the python code for that XHeader back.*xcffibInformation on basic X types."xcffib"Clone of python's struct.calcsize.+xcffib2Make a struct style (i.e. not union style) unpack.,xcffibQGiven a (qualified) type name and a target type, generate a TypeInfoMap updater. !"! "-      !"#$%&'()*+,-./0#xcffib-0.8.1-IQbpy94R3ZC7Mhpvhsc4qeData.XCB.Python.PyHelpersData.XCB.Python.ParseidentmkNamemkDotmkAttrmkImport mkRelImportmkIntmkAssignmkIncrmkCallnoArgsmkEnummkParamsmkArgmkXClass mkEmptyClassmkClassmkStr mkUnpackFrommkDict mkDictUpdatemkMethodmkReturnpyTruthpyNonemkIf repeatStr$fPseudoExprExpr$fPseudoExpr[]$fPseudoArgumentArgument$fPseudoArgumentExpr parseXHeadersrenderPyxformcalcsize $fEqTypeInfo $fOrdTypeInfo$fShowTypeInfo$fShowBindingPart stNeedsPadBaseType CompositeType baseTypeInfomkStructStyleUnpackmkModify