定義済み演算は、定義済み単項演算または定義済み 2 進演算のいずれかです。これは、関数および総称インターフェース・ブロックによって定義されます (インターフェース・ブロックを参照してください)。 定義済み演算は、組み込み演算ではありませんが、組み込み演算子を定義済み演算に拡張することはできます。たとえば、加算の組み込み 2 進演算子 (+) の意味を拡張することによって、派生型の 2 つのオブジェクトを加算することができます。拡張組み込み演算子がタイプなしのオペランドを持っている場合、その演算は組み込みとして評価されます。
拡張される単項組み込み演算のオペランドは、組み込み演算子で要求されるタイプを持つことはできません。拡張される 2 進組み込み演算子のオペランドのいずれか、またはその両方は、組み込み演算子で必要とされるタイプおよびランクを持つことはできません。
定義済み演算の定義済み演算子は、総称インターフェースの中で定義されなければなりません。
定義済み演算子は、拡張された組み込み演算子であり、次の形式を持ちます。
.--------------. V | >>-.----+-letter---+-+--.-------------------------------------->< | (1) | +- _ ------+ | (2) | '- $ ------' 注:
|
定義済み演算子の文字数は、31 文字まででなければなりません。また、定義済み演算子は、組み込み演算子または論理リテラル定数と同じであってはなりません。
インターフェース・ブロック内の演算子の定義および拡張方法の詳細については、 総称インターフェース・ブロックを参照してください。