Sprach-Konstrukte / Parser-Befehle

Parser-Befehle

Am Anfang einer Skript-Datei können dem JayMo-Parser Befehle übergeben werden, welche den Parse-Vorgang oder den nachfolgenden Programm-Ablauf beeinflussen.

Diese Befehle müssen immer am Anfang eines Skripts und vor allen anderen Befehlen stehen. Jeder Befehl wird mit einem '>' eingeleitet.

Argumente übergeben

Generell werden Argumente innerhalb von Klammern übergeben:

>prefix( "Foo" )

Einzelnes Argument

Wird nur ein einzelnes Argument übergeben, so darf die Klammer entfallen:

>prefix "Foo"

Ebenso ist es in diesem Fall möglich, das Argument wie bei "set"-Funktionen mit einem '=' zu übergeben:

>prefix = "Foo"

Arten

Es existieren zwei verschiedene Arten von Befehlen:

  • Befehle, welche die gesamte Anwendung betreffen und somit nur in der allerersten Skript-Datei stehen dürfen.
  • Befehle, die nur für eine einzelne Skript-Datei gelten.

In jeder JayMo-Datei möglich:

>include Bindet eine weitere JayMo-Datei ein
>prefix Setzt das Prefix für Typen, die mit einem Unterstrich beginnen
>class Importiert gezielt eine Java-Klasse
>package Importiert ein Java-Paket

Nur in der allerersten JayMo-Datei möglich

>debug Debug-Ausgaben
>setOutputFile Alle Ausgaben werden in diese Datei umgeleitet.
>save Untersagt JayMo den Zugriff auf Dateien, Threads, Java-Objekte, ...
>strictWebstart Verbietet Typen, die in der Webstart-Demo nicht verfügbar sind. Z.B. "Input"
>unsafeHotCode Die Ausführung von unsicherem Code mit "app.exec()" wird erlaubt.
>openDec Dezimalzahlen vom Typ "Dec" nicht normalisieren
>lazyErrors Viele Code-Fehler können zur Laufzeit mit "try" gefangen und ausgewertet werden.
>noJava Der Zugriff auf Java-Klassen wird unterbunden
>sandbox In diesem Modus ist keinen Zugriff nach außen möglich. Z.B. stehen Dateien, Shell-Befehle und Java nicht zur Verfügung.

Abkürzungen:

Kurzform Ausgeschrieben
>> lib.jmo
>include( "lib.jmo" )
>? java.net.URI
>class( "org.foo.bar" )
>* java.net
>package( "org.foo.bar" )
- Powered by OghsWiki -

 

 

Unterstützen

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

Erhalten:  0 €