掲示板一覧   -   トピック一覧
   Enterprise Architect 全般
     ステレオタイプの追加について


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
未登録ゲスト
投稿日時: 2007-7-12 19:15

ステレオタイプの追加について

C++/CLIにおいて、以下のようなソースを生成させようと思います。

[FlagsAttribute]
enum Test
{
A = 1,
B = 2,
C = 4
};

「[FlagsAttribute]」の出力については「flags enumeration」のような
ステレオタイプを作成し、コードテンプレートエディタでステレオタイプ
指定のテンプレートの追加でenumerationをベースにしたテンプレートを
記述することで解決できました。

しかし追加した「flags enumeration」がクラス図上でenumerationのような
動作をしてくれません。例えば属性を追加した際にenumerationだと可視性が
空白となりますが、独自に設定した「flags enumeration」では可視性が
Publicとなります。

ステレオタイプ「flags enumeration」を追加する際にenumerationの
派生ステレオタイプとして定義できればよいのですが、そのような
ことはできるのでしょうか?

あるいは他の手段を使えばenumerationでも[FlagsAttribute]を出力
できるよ、ということであればその方法をご教授ください。
tkouno
投稿日時: 2007-7-13 9:00
EA Administrator
投稿: 3939

Re: ステレオタイプの追加について

まず、Enterprise Architectでの表示ですが、ステレオタイプが
enumerationの場合には、ご指摘のような特別な表示を
行っています。

何らかの設定で、このように表示することはできません。


Enterprise Architectで多く利用されている方法としては、
今回のように何らかの情報をコードに追加する場合には
「タグ付き値」を利用します。

具体的にはヘルプファイルの「ソースコードとモデルの変換ルール
」以下の
項目をご覧ください。

例えば、C++/CLIで、属性のliteralキーワードは
属性のタグ付き値にこの情報を保持し、ソースコードに
出力しています。

同様に、タグ付き値にFlagsAttributeというタグを追加し
このタグが定義されている場合には、[FlagsAttribute]を
出力する、という方法があるかと思います。

ぜひお試しください。


なお、今回の件については、Enterprise Architect自身として
対応すべきキーワードのようにも思います。
機能追加要望として検討させてください。
未登録ゲスト
投稿日時: 2007-7-13 18:12

Re: ステレオタイプの追加について

ご提案いただいたタグ付き値を利用することにより、目的のコードを生成できました。

迅速な回答ありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ