Abkürzungen / In die Tiefe

In die Tiefe

"get" und "set" sind in JayMo sehr mächtige Funktionen. Mit diesen kann durch einen Baum manövriert werden und es lassen sich Nodes direkt ansprechen:

t.get( "Foo", "Bak", "Bak2").add("Another")

Eckige Klammern

Mit eckigen Klammern lassen sich "get" und "set" abkürzen, was auch folgendes ermöglicht:

t[ "Foo", "Bak" ].add( "Xyz" )
t[ "Foo", "Bak", "Xyz" ].value = 3 

Pull / Put

"pull" ist die "lazy" Variante von "set" und "put" die "lazy" Variante von "get".

Während "get" oder "set" einen Fehler werfen, wenn eine Node nicht existiert, so wird bei "pull" oder "put" der entsprechende Zweig ggf. automatisch angelegt.

t.pull( "Abc" ).print
t.pull( "Abc" ).print

In der ersten Zeile wird die Node angelegt und ausgegeben, in der zweiten Zeile wird die bestehende Node abgerufen und ausgegeben.

Wird an die eckigen Klammern ein Fragezeichen angehängt, so wird der Aufruf als "lazy" interpretiert (pull/put).

So lässt sich auch sehr schnell ein Baum aufbauen:

tree = Tree
tree[ "org", "jmo_lang", "www" ]? = "Home of JayMo"
tree.show
- Powered by OghsWiki -

 

 

Unterstützen

Die Entwicklung von "JayMo" wird derzeit nur durch Eigeninitiative ermöglicht.

Erhalten:  0 €