フラグは、さまざまな方法で組み合わせることができます。一般的に、有効な組み合わせは、Intent 言語によって定義されません。いくつかの例外を除き、無効なフラグの組み合わせを指定しても、実害はありません。フラグを指定する順番にも意味はありません。
- Fixed フラグと Uncached フラグは、他のフラグと相互に組み合わせることができます。
-
Required
は、Parameter フラグまたは Canonical フラグのみと組み合わせることができます。
- Parameter を Lookup と組み合わせると、ルールでパラメータ式が使用されます(指定された場合)。指定されていない場合は、通常の Lookup ルールのように動作します。優先順位は次のとおりです。
- 動的ルール(オーバーライドされている場合、Fixed 以外)
- 親の子ルールで指定されたパラメータ式
- 同名の先祖のルックアップ
- 元のルールの既定の式
次の例では、コンベヤ システムの構造脚のサイズを設定しています。legSize ルールは、最上位デザインで定義されます。
<%%Category("Section")> _
Rule legSize As Number
If partWeight > 100 Then
legSize = 100
Else
legSize = 75
End If
End Rule
legSize ルールは、コンベヤ セクション(子)のルックアップ パラメータとしても定義されます。
<%%Category("Section"),_
%%Prompt("Leg tubing size"),_
%%Choices("50,75,100")> _
Lookup Parameter Rule legSize As Number = 75
Lookup フラグを使用して定義されているため、Intent は親(親の次は、次に高いレベルの先祖(存在する場合))からデータを取得しようとします。最上位デザインの partWeight の値によって、legSize の値が決まりますが、コンベヤ セクションの子でオーバーライドすることができます。
- Parameter と Canonical(「グループ ルール -> フラグ > サポートされるフラグの組み合わせ」を参照してください)。
- Passive は Parameter のみと組み合わせることができます(「グループルール -> フラグ > サポートされるフラグの組み合わせ」を参照してください)。
- Canonical、Lookup、Parameter、Required は、評価に影響を与える唯一のフラグです。これらは互いに任意の組み合わせで使用することができます。指定されたパラメータ式は、他の形式よりも優先されます。
- External は、Uncached、Group、Child、Method、Shared と組み合わせて使用することはできません(組み合わせても意味がありません)。External は、これら以外のフラグとは組み合わせて使用することができます。External は、バインド解除時のルールの動作のみに影響します。他の特別な処理は行いません。
- Shared は、改行を挿入しなければ他のすべてのフラグと組み合わせることができますが、Parameter や Lookup などの意味のない組み合わせになることがあります。