códon-codegen.

cycodegenlib - um hack para gerar código de citónio da saída XML gerada pelo GCCXML
Baixe Agora

códon-codegen. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • MIT/X Consortium Lic...
  • Preço:
  • FREE
  • Nome do editor:
  • David Cournapeau

códon-codegen. Tag


códon-codegen. Descrição

cycodegenlib - um hack para gerar código de citónio da saída XML gerada por GCCXML Cython-Codegen é um hack para gerar código de citônia da saída XML gerada pelo GCCXML.Este é um pacote pequeno para gerar código de citónio do arquivo de cabeçalho: em vez de ter que escrever todas as declarações e estruturas de função, xml2cython pode usar arquivos de saída gccxml Para gerar todas as declarações automaticamente.Usage: Diga que você tem um cabeçalho foo.h você quer embrulhar com o citnão. Primeiro, você precisa para gerar um arquivo XML do GCCXML. Você pode usar o script H2XML de CTYPELIBS: H2XML -I. foo.h -o foo.xmlyou pode então gerar o arquivo de citon com xml2cython: xml2cython.py -l 'foo' foo.h foo.xmlthis informa o xml2cython para gerar um arquivo de citnon de foo.xml, originando fromfoo.h por gccxml, E para apenas extrair itens cujo local corresponda à string foo.location: Por padrão, XML2Cython retira todas as funções no arquivo XML e toda 'dependência' (necessária para gerar declarações corretas da função de cython). É provável que isso gere um código de citônia inválido por causa de intriincs de compiladores e assim por diante, então você deve filtrar os itens retirados do arquivo XML.Location é um conceito GCCXML relacionado à origem de cada item na árvore analisada construída por GCCXML . Localização refere-se a um local de arquivo e linha para cada item C (estrutura, digitação, declaração de função, etc ...). Simplesmente usar a opção -l de xml2cython no nome do arquivo de cabeçalho, portanto, apresentará apenas funções declaradas nesse arquivo. Você também pode usar um regex, que será correspondido com o local do arquivo de cada item. Se você precisar de mais controle, provavelmente precisará fazer isso sozinho. Xml2cython não é nada mais do que um hack para evitar escrever arquivos de citónio para enrolar a API grande. Como não sei nada sobre compiladores e análise, é provável que a implementação faça você rir, também. Declarações de muitas centenas não são suportadas pelo citon (por exemplo, números complexos) e nenhum cheque é feito que o XML2Cython gera código de citnão válido. Qualquer arquivo de cabeçalho que trava xml2cython é um bug, mas um arquivo de cython não edificável pode não ser. Outro problema é que o sistema de consulta é limitado, o que significa que os arquivos gerados são rapidamente muito grandes, portanto, lento para compilar com o citnão. Eu estou adicionando algumas capacidades de filtros (para filtrar em nomes de funções, origem de arquivo, etc ...), mas é improvável que seja extravagante. Isso é dito, Xml2cython é útil :) Pode gerar código válido para cabeçalho não trivial ( Eu estou usando com sucesso para enrolar a ALSA - A C API com> 1000 funções, cem de typedefs e estruturas, bem como Coreaudio no Mac OS X) .c vs C ++ Infelizmente, o GCCXML analisa apenas arquivos C ++. Então, se o seu cabeçalho não é compatível com C ++, não funcionará. Nenhum conceito C ++ é suportado pelo XML2cython, a maioria deles é removido da AST por XML2Cython para evitar conflitos com o citonete (que não suporta construções C ++). Requisitos: · Pitão · Pygccxml. · Codegenlib do ctypeslib


códon-codegen. Software Relacionado

Autojar.

ajuda a criar arquivos jar de tamanho mínimo de diferentes entradas, como as classes próprias, arquivos externos etc ...

190

Download