Constraints 段落

Constraints 段落では、汎用タイプまたはメソッドのパラメータのプロパティを指定できるため、タイプがそのパラメータとして指定されるデータ項目でメソッドまたはプロパティを使用できます。

constraints-paragraph

type-specifier type-specifier

次に、汎用引数 T を宣言する USING 句を使用する静的汎用メソッドを示します。この汎用引数は、タイプ System.IComparable として制約されます。メソッドは 2 つのパラメータを予測し、どちらのパラメータも汎用引数と同じタイプである必要があります。

       method-id Min using T static.
       constraints.
           constrain T implements type System.IComparable.
       procedure division using by value item1 as T item2 as T
                      returning res as T.
           if item1::CompareTo(item2) < 0
               set res to item1
           else
               set res to item2
           end-if
       end method.

この場合、T が IComparable インターフェースを実装することがわかっているため、CompareTo メソッドを呼び出すことができます。