ExternalType-Abschnitt

ExternalType-Abschnitte stellen eine Zuordnung von EGL zu externen Sprachelementen her.

Sie können jeden der folgenden Stereotypen mit dem ExternalType-Abschnitt verwenden:
Ein ExternalType-Abschnitt weist folgende Merkmale auf:
Ein ExternalType-Abschnitt besteht aus den folgenden Komponenten:
Variablendeklarationen
Diese ermöglichen den Zugriff auf öffentliche Variablen im externen Sprachelement.
Funktionsprototypen
Diese stellen Methodenaufrufe oder Funktionsaufrufe im externen Typ dar.
Konstruktorprototypen
Diese definieren die Syntax für das Erstellen einer Variablen dieses externen Typs mithilfe einer EGL-Anweisung new.
Weitere Informationen hierzu finden Sie in Einführung in ExternalType-Abschnitte.

Syntax

Syntaxdiagramm für ExternalType-Abschnitt
Typname
Der Name, den Sie dem Abschnittstyp zuordnen. Verwenden Sie diesen Namen in der Anweisung, die eine Variable dieses Typs erstellt.
externer Typ
Die Klausel extends bezieht sich auf eine andere ExternalType-Definition, die Funktions- und/oder Variablenprototypen enthält, die dieser Typ übernimmt.
Stereotyp
Eine der folgenden Arten: JavaObject, JavaScriptObject oder HostProgram.
Variablendeklaration
Diese Prototypdeklaration stellt eine Variable in dem externen Typ dar. Es wird kein Speicher zugeordnet, d. h., Sie können Initialisierungsoperatoren mit diesen Deklarationen verwenden. Verwenden Sie die EGL-Syntax und erstellen Sie die Variable auf der Basis von EGL-Primitive-Typen, die nativen Typen entsprechen. Ein Beispiel für native Typen finden Sie in EGL-Basiselemente zu Java zuordnen.
static
Dieses Schlüsselwort gibt an, dass die angegebene Funktion oder Variable neben einer Variablen besteht, die auf dem externen Typ basiert, und dass Sie mit der Syntax typeName.functionName() auf sie verweisen können.
Funktionsprototyp
Diese Prototypdeklaration stellt eine Funktion in dem externen Typ dar. Verwenden Sie keinen Code in der Deklaration, sondern geben Sie Parameter und Rückgabewerte unter Verwendung der EGL-Syntax an. Primitive-Typen, die Sie als Parameter übergeben, müssen den Änderungswert in enthalten.
Parameter
Dies sind die Parameter, die EGL benötigt, um eine Variable dieses Typs mit der Anweisung new zu erstellen. Verwenden Sie Typname für den Abschnittsnamen in der Anweisung new; siehe new (Operator).

Beispiel

Das folgende Beispiel zeigt einen ExternalType-Abschnitt mit Funktionsprototypen:

ExternalType TaxModule type JavaObject
  // Definition öffentlicher Variablen
  adjustedGrossIncome FLOAT;
  companyName STRING;

  // Definition des Funktionsprototyps
  function calculateTax (adjIncome FLOAT in) returns (FLOAT);

  // Definition des Konstruktorprototyps
  constructor (taxAuthority STRING);
end

// Aufruf des obigen Konstruktors in neuem Ausdruck
myTaxModule TaxModule = new TaxModule("NC") {
  adjustedGrossIncome = 60135.00,
  companyName = "CompanyB" };

myTax = myTaxModule.calculateTax (myIncome);

Kompatibilität

Tabelle 1. Überlegungen zur Kompatibilität für ExternalType-Abschnitte
Plattform Problem
COBOL-Generierung Benutzererstellte ExternalType-Abschnitte werden nicht unterstützt.

Feedback