def writeBasicTypes(api, filename):

    def gen():
        (definitionsCore, definitionDuplicates) = splitUniqueAndDuplicatedEntries(api.definitions)
        for line in indentLines(chain(genDefinitionsSrc(definitionsCore), genDefinitionsAliasSrc(definitionDuplicates))):
            (yield line)
        (yield '')
        for line in genHandlesSrc(api.handles):
            (yield line)
        (yield '')
        for enum in api.enums:
            if (not enum.isAlias):
                for line in genEnumSrc(enum):
                    (yield line)
            (yield '')
        for bitfield in api.bitfields:
            if (not bitfield.isAlias):
                for line in genBitfieldSrc(bitfield):
                    (yield line)
            (yield '')
        for line in indentLines([('VK_DEFINE_PLATFORM_TYPE(%s,\t%s);' % (s[0], c)) for (n, s, c) in PLATFORM_TYPES]):
            (yield line)
        for ext in api.extensions:
            if (ext.additionalDefs != None):
                for definition in ext.additionalDefs:
                    (yield ((('#define ' + definition.name) + ' ') + definition.value))
    writeInlFile(filename, INL_HEADER, gen())
def writeBasicTypes(api, filename):

    def gen():
        (definitionsCore, definitionDuplicates) = splitUniqueAndDuplicatedEntries(api.definitions)
        for line in indentLines(chain(genDefinitionsSrc(definitionsCore), genDefinitionsAliasSrc(definitionDuplicates))):
            (yield line)
        (yield )
        for line in genHandlesSrc(api.handles):
            (yield line)
        (yield )
        for enum in api.enums:
            if (not enum.isAlias):
                for line in genEnumSrc(enum):
                    (yield line)
            (yield )
        for bitfield in api.bitfields:
            if (not bitfield.isAlias):
                for line in genBitfieldSrc(bitfield):
                    (yield line)
            (yield )
        for line in indentLines([('VK_DEFINE_PLATFORM_TYPE(%s,\t%s);' % (s[0], c)) for (n, s, c) in PLATFORM_TYPES]):
            (yield line)
        for ext in api.extensions:
            if (ext.additionalDefs != None):
                for definition in ext.additionalDefs:
                    (yield ((('#define ' + definition.name) + ' ') + definition.value))
    writeInlFile(filename, INL_HEADER, gen())