テンプレート ディレクティブの例
次の例は、簡単な production を示しています。
*Production: EXACTLY_ONE
{
*Production: SATISFY_ALL
{
*Member: GENERIC_OPTION {*Occurs: [1-*] }
*Member: DEFAULT_OPT {*Occurs: [0-*] }
}
*Production: SATISFY_ALL
{
*Member: GENERIC_OPTION {*Occurs: [0] }
*Member: DEFAULT_OPT {*Occurs: [0] }
}
}
このプロダクションによってホスト テンプレートにバインドされるコンストラクタ インスタンスには、次のいずれかの組み合わせを含めることができます。
DEFAULT_OPT または GENERIC_OPTION のインスタンスはありません。
GENERIC_OPTIONの 1 つ以上のインスタンス。DEFAULT_OPT のインスタンスはありません。
GENERIC_OPTION の 1 つ以上のインスタンスと、DEFAULT_OPT の 1 つ以上のインスタンス。
コンストラクトのインスタンスは、少なくとも 1 つの GENERIC_OPTION のインスタンスなしで DEFAULT_OPT の 1 つ以上のインスタンスを持つことはできません。
ホストテンプレートが他のテンプレートを継承している場合、継承されたテンプレートで定義されたプロダクションも評価されるため、ホストテンプレートのプロダクションが TRUE に評価されるためには、それらも TRUE である必要があります。