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