論理パーツの概要

論理パーツは、命令の順序を定義します。論理パーツのほとんどは、論理の基本単位である、関数 を 1 つ以上含みます。

関数は、パラメーターを受け取り、EGL ステートメントを実行し、その関数を呼び出した関数に値を返すことができます。 関数の簡単な例は、次のとおりです。
Function addIntegers(int1 int in, int2 int in) returns (int)
    sum int = int1 + int2;
    return (sum);
end
詳しくは、 関数を参照してください。

関数は、厳密に言えば論理パーツではありませんが、論理パーツの外側に存在して、それによって論理パーツのように動作することができます。 独立型関数パーツを参照してください。

プログラム
プログラムは、最もシンプルな論理パーツです。EGL のプログラムは、他の多数のプログラム言語のプログラムと同様に動作します。 EGL プログラムには、main という名前の関数を 1 つ含んでいる必要があり、これは、そのプログラムが実行されるときに呼び出される関数です。 プログラムには、その他の任意の数の関数を含めることができます。 簡単なプログラム・パーツを、次の例に示します。
package programs;

program multiplicationTable type BasicProgram
    
    stopNumber int = 7;
    
    function main()
        SysLib.writeStderr("Printing multiplication table through " 
            :: stopNumber);
        i, j int;
        
        for (i from 1 to stopNumber by 1)
            for (j from 1 to stopNumber by 1)
                printProduct(i, j);
            end
        end
        
        SysLib.writeStderr("Finished.");
    end
    
    function printProduct(int1 int in, int2 int in)
        SysLib.writeStderr(int1 :: "x" :: int2 :: 
            "=" :: int1*int2);
    end
    
end
ライブラリー
ライブラリー・パーツは、他の論理パーツからローカルに使用可能な関数および変数の集合です。 1 つのライブラリー・パーツ内の関数は、任意の順序で呼び出すことができますが、プログラム内の main 関数は常に最初に実行されます。 簡単なライブラリー・パーツを、次の例に示します。
package libraries;

library myMathLibrary type BasicLibrary
    
    function addIntegers(int1 int in, int2 int in) 
        returns (int)
        return (int1+int2);
    end
    
    function subtractIntegers(int1 int in, int2 int in) 
        returns (int)
        return (int1-int2);
    end
    
end
ハンドラー
ハンドラー・パーツは、特定のユーザー・インターフェースをコントロールするように特化されています。
BasicHandler
BasicHandler パーツは、最もシンプルなハンドラーです。通常は、インターフェースのタイプに特化したハンドラーを使用します。
JSFHandler
JSF ハンドラーは、Web ページをコントロールします。JSF Web アプリケーションの要素を参照してください。
JasperReport
Jasper レポート・ハンドラー・パーツは、Jasper Reports フレームワーク内で EGL が作成するレポートをコントロールします。 EGL JasperReport アプリケーションの要素を参照してください。
サービス
ライブラリー・パーツと同様に、サービス・パーツも関数の集合ですが、ライブラリー・パーツとは異なり、サービス・パーツは、現行実行単位の外側にあるアプリケーションが、それらの関数を使用できるように設計されています。
インターフェース
インターフェース・パーツは、関数などの実行可能コードを含まずに、関数プロトタイプを含んでいるので、ほとんどの論理パーツと異なっています。 他の論理パーツのように実際の論理を定義する代わりに、インターフェース・パーツは、別の論理パーツ、通常はサービス・パーツを記述しているだけです。 EGL では、インターフェースを使用して、アプリケーションが使用するサービスの計画や表記を行うことができます。
ExternalType
ExternalType パーツを使用して、EGL 内で、別の言語の要素を参照する変数を作成できます。 一般に、ExternalType パーツは Java™ オブジェクトを表すために使用されます。 ExternalType パーツには、Java オブジェクト内の論理を呼び出すことを可能にする関数プロトタイプが含まれます。 さらに ExternalType パーツには、Java オブジェクト内の public 変数を表す変数を含めることができます。例については、Java の呼び出しを参照してください。

フィードバック