Cython-Codegen

CYCODEGENLIB - een hack om Cython-code te genereren van XML-uitgang gegenereerd door GCCXML
Download nu

Cython-Codegen Rangschikking & Samenvatting

Advertentie

  • Rating:
  • Vergunning:
  • MIT/X Consortium Lic...
  • Prijs:
  • FREE
  • Naam uitgever:
  • David Cournapeau

Cython-Codegen Tags


Cython-Codegen Beschrijving

CYCODEGENLIB - Een hack om Cython-code te genereren van XML-uitgang gegenereerd door GCCXML Cython-Codegen is een hack om Cython-code te genereren van XML-uitgang die wordt gegenereerd door GCCXML.Dit is een klein pakket om Cython-code van headerbestand te genereren: in plaats van alle functieverklaringen en structuren zelf te schrijven, kan XML2Cython GCCXML-uitvoerbestanden gebruiken Om alle aangiften automatisch te genereren.USAGE: Zeg dat je een header foo hebt ..h je wilt wikkelen met Cython. Ten eerste hebt u een XML-bestand van GCCXML nodig. U kunt het H2XML-script gebruiken uit CTYPELIBS: H2XML -I. foo.h -o foo.xmlyou kan dan het Cython-bestand genereren met XML2cython: XML2cython.py -l 'foo' foo.h foo.xmlthis vertelt xml2cython om een cython-bestand te genereren van foo.xml, afkomstig van fromfoo.h by gccxml, en om alleen items te trekken waarvan de locatie overeenkomt met de string foo.locatie: Standaard trekt XML2cython elke functie uit in het XML-bestand en elke 'afhankelijkheid' (noodzakelijk om correcte Cython-functie-verklaringen te genereren). Dit zal waarschijnlijk ongeldige Cython-code genereren vanwege compilers Intrisincs enzovoort, dus u moet de items die uit het XML-bestand moeten filteren. Locatie is een GCCXML-concept 'met betrekking tot de oorsprong van elk item in de geparseerde boom die is gebouwd door GCCXML . Locatie verwijst naar zowel bestands- als lijnlocatie voor elk C-item (structuur, typedef, functieverklaring, enz ...). Gebruik eenvoudig de optie -L van XML2Cython op de naam van het koptekst-bestand, daarom zal alleen functies in die bestand worden gedeclareerd. U kunt ook een regex gebruiken, die wordt afgestemd op de bestandslocatie van elk item. Als u meer controle nodig hebt, moet u het waarschijnlijk alleen doen. Gemeenschappelijk. XML2cython is niets meer dan een hack om te voorkomen dat het schrijven door hand Cython-bestanden om grote API in te pakken. Omdat ik niets weet over compilers en parsering, is het waarschijnlijk dat de implementatie je aan het lachen maakt, ook.Vany C-verklaringen worden niet ondersteund door Cython (bijvoorbeeld complexe getallen) en er wordt geen cheque gemaakt dat XML2cython geldige Cython-code genereert. Elk Header-bestand dat XML2Cython crasht, is een bug, maar een niet-bebouwd cython-bestand mag niet zijn. Het andere probleem is dat het query-systeem beperkt is, wat betekent dat de gegenereerde bestanden snel erg groot zijn, vandaar traag om te compileren met Cython. Ik voeg een paar filtersmogelijkheden aan (om te filteren op functienamen, bestandsafhankelijke oorsprong, enz ...), maar het is onwaarschijnlijk dat het erin is om van mening te zijn. XML2cython is handig :) het kan een geldige code genereren voor niet-triviale header ( Ik gebruik het met succes om ALSA - A C API te wikkelen met> 1000 functies, honderd typedefs en structuren, evenals Coreaudio op Mac OS X) .c vs C ++ Helaas parseert GCCXML alleen C ++ -bestanden. Dus als uw kop niet C ++ compatibel is, werkt het niet. Geen C ++ -concept wordt ondersteund door XML2Cython, de meesten van hen worden van de AST verwijderd door XML2Cython om conflicten met Cython te voorkomen (die ook geen C ++ -constructies ondersteunt). Vereisten: · Python · Pygccxml · Codegenlib van CTYPESLIB


Cython-Codegen Gerelateerde software

Phebe

Communiceer met een mobiele telefoon die op uw computer is aangesloten ...

142

Downloaden