Literal

Screenshot der Software:
Literal
Softwarebeschreibung:
Version: 1.0.0
Upload-Datum: 15 Apr 15
Entwickler: Ask Solem
Lizenz: Frei
Popularität: 41

Rating: nan/5 (Total Votes: 0)

Literal ist ein Projekt, einen Weg zu Python-Code mit Python-Code zu generieren. & Nbsp; Anstatt Zeichenfolgenliteralen von Python-Code, literal.py Objekte verwenden Sie, dass die Operationen mit ihnen gemacht, erinnert, und die Geschichte der Operationen ist die resultierende Python-Programm.
Dies ist nur ein Experiment, das ich mit spielen wollte; Es ist Nutzen nicht bewiesen ist, und mehr als wahrscheinlich, wird diese entfernt als gescheitertes Experiment geworfen werden. So verwenden mit Sorgfalt und Vorsicht.
Schneller Überblick
Import wörtliche
@ Literal.py
def unpack_octet (x, Nutzlast, Offset, unpack_from):
& Nbsp; x <<= unpack_from ('B', Nutzlast, Offset)
& Nbsp; Offset + = 1
print (unpack_octet ())
Ermöglicht:
x = unpack_from ('B', Nutzlast, Offset)
Offset + = 1
Oder ein anderes Beispiel verwendet werden, um Argument Entpacker für den AMQP-Protokoll zu erstellen:
def auspacken (Methode):
& Nbsp; @ literal.py
& Nbsp; def Körper (p, Nutzlast, Offset, unpack_from, argtuple, ssize):
& Nbsp; Felder = method.fields
& Nbsp; names = p.tuple (* self.field_names)
& Nbsp; für i, fset in enumerate (Felder):
& Nbsp; wenn len (fset) == 1:
& Nbsp; für Feld in fset:
& Nbsp; name = p.var (field.name)
& Nbsp; wenn field.format == '*':
& Nbsp; # Dies ist ein String-Nutzlast,
& Nbsp; # müssen nicht entpacken
& Nbsp; Namen <<= Nutzlast [Offset: Offset + ssize]
& Nbsp; Offset + = ssize
& Nbsp; sonst:
& Nbsp; # Ein einzelnes Feld zu entpacken
& Nbsp; Namen <<= unpack_from (struct_format (field.format)
& Nbsp; Nutzlast, Offset) [0]
& Nbsp; Offset + = field.size
& Nbsp; sonst:
& Nbsp; # Eine Liste von Feld zu entpacken
& Nbsp; Diese = p.tuple (* fset.names)
& Nbsp; Diese <<= unpack_from (struct_format (fset.format)
& Nbsp; Nutzlast, Offset)
& Nbsp; Offset + = Summe (f.size für f in fset)
& Nbsp; zurück Namen
. & Nbsp; Rück Körper () as_fun (Lambda Nutzlast, Offset: 1,
& Nbsp; method.name)
Möchten Sie den folgenden Code für das AMQP Verfahren basic_deliver erzeugen:
def liefern (Nutzlast, Offset):
& Nbsp; ssize = unpack_from ('B', Nutzlast, Offset) [0]
& Nbsp; Offset + = 1
& Nbsp; consumer_tag = Nutzlast [Offset: Offset + ssize]
& Nbsp; Offset + = ssize
& Nbsp; delivery_tag, zurückgeliefert, ssize = unpack_from ('QBB', Nutzlast, Offset)
& Nbsp; Offset = 10 +
& Nbsp; Austausch = Nutzlast [Offset: Offset + ssize]
& Nbsp; Offset + = ssize
& Nbsp; ssize = unpack_from ('B', Nutzlast, Offset) [0]
& Nbsp; Offset + = 1
& Nbsp; routing_key = Nutzlast [Offset: Offset + ssize]
& Nbsp; Offset + = ssize
& Nbsp; return (consumer_tag, delivery_tag, zurückgeliefert,
& Nbsp; Austausch, routing_key)
Weitere Dokumentation zu kommen.
Installation
Sie können entweder über die Python Package Index (PyPI) oder von der Quelle wörtliche installieren.
So installieren Sie mit pip:
pip installieren wörtliche
So installieren Sie über easy_install:
& Nbsp; easy_install wörtliche
Wenn Sie ein Quell-Tarball heruntergeladen haben, können Sie, indem Sie folgendermaßen installieren:
& Nbsp; python setup.py build
# Python setup.py als root installieren #
Bug tracker
Wenn Sie Anregungen, Fehlermeldungen oder Störungen haben melden Sie diese bitte an unseren Bugtracker bei http://github.com/ask/literal.py/issues/
Beitrag
Entwicklung literal.py geschieht auf Github: http://github.com/ask/literal.py
Sie sind sehr ermutigt, sich an der Entwicklung zu beteiligen. . Wenn Sie nicht wie Github (aus irgendeinem Grund) können Sie gerne regelmäßig Patches senden

Anforderungen :

  • Python

Andere Software von Entwickler Ask Solem

Kombu
Kombu

12 May 15

celerymon
celerymon

20 Feb 15

Celery
Celery

12 May 15

Kommentare zu Literal

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!