Accéder au contenu principal

[Python] CCodeInline to replace np_inline.

An home-made design, not Warning, no exception enter in 500 lines and can merely compile everything in C. Designed to be more like C++, np_inline is a Boiler plate extracted from bare-bottom python doc

where my Actual development of CCodeInline is a class implementation of the same idiom... Adding possibility to upgrade the skeleton, it also come with possibility to add Include header ( what was really missing inside the Initial boiler-plate of a good C extension of Python compiled code )

Some other story from my github can also comment more on development and what was achieved... But on 3 days of works it merely show a same-to-same comparison be achieved... Parsing is 90% complete and the inherent design like writing the code inside a temporary-path, building and loading module with imp is 100% ported from my class design... A Big Plus, More than one code can be inserted in a skeleton, and Include list ( Should ) follow... Example from the file inside the __main__ demonstrate it's capacity to keep the merged/parsed information and can be switched from a current skeleton to another...

So maybe another fews days, and the code will support many Parameter in entry, C/C++ function will have a choosen C/C++ parameter before compiling, Header-file will be fully integrated and Function itself will not throw an assert on entry-function parameter being only Int or float, PyObject, String and many more parameter will be accessible...

Also planned to be released on pypi.python.org, this one will be up and growing...


Example of Managing a Skeleton with CCodeInline:

Managing the Skeleton

    
### Main example to define some code , some skeleton-Index and calling the
### inline_debug .
    
BInlineCode=r'''printf( "Program #%i: Hello world.\n", i ) ;'''
BCode = CCodeInline( args=(1, ), py_types=(( int, 'i'),)  )
### Note, the object is ready and we only need to define a Skeleton
### with property SkeletonIndex
BCode.SkeletonIndex = 1
BCode.AddSkeleton
### Also good if you do Errors by calling BCode.GenerateCode and parse tag and
### and realize there is an error inside the result, re-add the
### skeleton like this step to Initialize a Skeleton
### Just to sneak-out what inside to print a Generated/Parsed Skeleton
### you can call BCode.VarDefSkeleton property which is the active
### variable manager for current Skeleton
print BCode.VarDefSkeleton
### Don't forget to add the code:
BCode.FCCode = BInlineCode
### Did you add a malloc somewhere in your code.. Still need to add
### an Header ...
BCode.IncludeHeaderType = 'internal'
### IncludeHeaderType one of two words, 'internal', 'external'
### Based on Standard, an internal header will be handled like this : #include <...>
### and external-one will look like this : #include '...'
BCode.DictIncludeHeader = 'stdlib.h'
### Updating the Header list ready for parsing.
BCode.UpdateIncludeHeader
  
### If you do like to see once again, call GenerateCode and you will see appear it inside
### the Include-Header section...
BCode.GenerateCode()

XText may contains errors, syntax errors or lexical error...
XNow with SpellChecking and Editable text. Up to you to get something correct.


  • 1No Interest
  • 2Somewhat good
  • 3Good
  • 4Special.

Posts les plus consultés de ce blog

I am developper and Network Administrator and I respond to does Won’t Teach to theirs Kids to Code.

 And not yet music composer. But I made A.T.R. with Netracker in the 1990, and i am satisfied to say it's also programming while as simple reality to result it's whats sound producing from this MIDI translation of music sample into note. It's not because it take 20 years to achieve another part of a dream consist to understand code being sound plugin where some L.A.D.S.P.A. teach me howto drive the information and eventually re-create the plugin that turn the electricity down but from plugins activity. But I can say, my case involving having and partner that did the homework job in database to complete code where in a script alike Perl and I did learn from my same example I am showing online and about to expose because the first part is done. In fact it's having the plenty design and the code for 25 year in head since I did this homework in 1999-2000. The worst, I can give demonstration of a complex problem in users need, to have a system that does everything, and some ...

OpenAI devrait porter le nom de "OpenCrate with Rust" surtout si c'est le projet d'un GrandPère de l'AI qui gage sur IDF slint.

  Crate Cargo Rust...  À ma découverte de vouloir, ne par utilisé un MacIntosh, un Apple ou une paire de lunette de Apple pour voir foirer en beauté Rust avec son CARGO de "CRATE", et surtout de n'avoir pas réussi à laisser le "Rust Playground" ouvert plus de 5 minutes sur ma machine en Firefox et voir l'interface planter après avoir testé un projet de "base64", celle d'affiché un menu en mode texte.  IDF tient de l'acronyme ( Intel Developpers Framework ). Et personnellement voir un projet Rust tenir avec des clamps( appelé mitaine dans mon cas ) avec IDF reste un jeu d'équilibre. Facile à briser et relate des thèses et des manipulations qui demandent apparemment d'augmenter l'index mémoire, de la pile si vôtre projet slint plante une fois sur vôtre puce esp32s3.    Côté Arduino  À ma découverte j'ai installé IDF 5.1.5 qui est proche du développement Arduino esp32 (version 3.0.5 et utilise IDF 5.1.33-d... ). Et oui suite à ...

Hottest Snapshoot from my ThF4_LaFe Hard-State Nuclear Holdrum

This is my ThF 4 + LaFe (α-Fe) Nuclear Holdrum ( more than quantic-one ), for it's hard-state design. It's the revealed reproduction from 1980, after seeing the images with my tiny eyes from M.Villeneuve having a snapshoot from the Psychiatric hives, or vault. It was forbidden to stole because it was not yet made at this moment... To reproduce the image on the picture, they use white paint on the Xenon tube on external side of the holdrum... In fact this is PTFE thread used and it have it's property... Ionisation from PTFE thread is mildly-helper driving photo-source like filter-to-filter of a « ridicule » quater-plate effect side of using Fluor in light filtering, while in high-energy and high velocity light it en-lighting prior to filter... In This case  it's good, we are dealing with Ultra-violet led PaInSe ( also know as Hard-state gamma-ray pulse led from Praseodymium/Indium with filter to throw down wavelength to UV region...   ). I can conclude it's 5 xeno...