| Operatoren |
import — Importieren von einer oder mehreren externen Prozeduren.
import( : : ProcedureSource : )
Mit Hilfe des Befehls import ist es möglich aus einem HDevelop Programm heraus weitere, externe Prozeduren zu importieren. Die importierten Prozeduren stehen dabei nur derjenigen Prozedur zur Verfügung, die auch den import Befehl enthält, allen anderen nicht.
import Befehle dürfen an jeder beliebigen Stelle in einer Prozedur auftauchen. Die importierten Prozeduren stehen erst ab dem import Befehl zur Verfügung und können durch nachfolgende import Befehle mit anderen, gleichnamigen Prozeduren überschrieben werden.
proc() * unaufgelöster Prozeduraufruf import ./the_one_dir proc() * wird nach ./the_one_dir/proc.hdvp aufgelöst import ./the_other_dir proc() * wird nach ./the_other_dir/proc.hdvp aufgelöst
Der Parameter ProcedureSource gibt die Quelle der zu importierenden Prozeduren an. Diese kann entweder ein Dateiverzeichnis oder eine Prozedurbibliotheksdatei bezeichnen. In beiden Fällen kann die Angabe sowohl als absoluter als auch als relativer Pfad erfolgen. In letzterem Falle sieht HDevelop den Pfad als relativ zu dem Verzeichnis an, das die Prozedur mit dem import Befehl enthält. Enthält der Pfad Leerzeichen, so muß er in Anführungszeichen stehen, andernfalls ist die Programmzeile ungültig.
Im Gegensatz zu den System-, Benutzer- und Sitzungsprozedurpfaden werden beim import Befehl ausschließlich die angegebenen Dateiverzeichnisse nach Prozeduren durchsucht, nicht jedoch dessen Unterverzeichnisse.
Dabei ist zu beachten, dass import ein nicht ausführbarer Befehl ist und ProcedureSource deswegen schon beim Laden der Prozedur ausgewertet werden muss. ProcedureSource muss also ein konstanter Ausdruck sein, und es ist insbesondere nicht möglich, eine Textvariable in ProcedureSource zu übergeben.
Allerdings darf ProcedureSource auch Umgebungsvariablen enthalten, die von HDevelop entsprechend aufgelöst werden. Umgebungsvariablen müssen, unabhängig von der verwendeten Plattform, in jedem Fall in Windows Syntax angegeben werden, also z.B. %VARIABLE%.
import überprüft nicht, ob der Pfad ProcedureSource überhaupt existiert oder ob er eine Prozedurbibliothek oder ein Verzeichnis beschreibt. import Befehle mit nicht existierenden oder wirkungslosen Pfaden bleiben daher in jedem Fall gültige Programmzeilen.
Importierte Pfade werden in HDevelop in den Prozedur Einstellungen gesondert aufgeführt. Selbstverständlich können diese Pfade aus den Prozedur Einstellungen heraus nicht geändert noch deaktiviert werden. Prozeduren, die ausschließlich durch import Anweisungen verfügbar sind, werden mit einem speziellen Icon gekennzeichnet.
Im Programmlisting wird der import Befehl nicht in Operatorschreibweise sondern ohne Klammern angegeben, da es sich hierbei um eine Deklaration und nicht um einen Operatoraufruf handelt.
Verzeichnis oder Prozedurbibliotheksdatei, in denen die zu importierenden Prozeduren gespeichert sind
import wird nicht ausgeführt.
Foundation
| Operatoren |