クラスのラウンドトリッピング

下表に、クラス実装ファイルでラウンドトリップできる変更を示します。
要素 変更
コンストラクターと操作
  • 引数の名前を変更。
  • 名前を変更すると、引数の説明が失われます。
  • 引数の型は変更できません。
  • 区切り文字 //# と //#、または --+ と --+ の間の本体の変更。
状態アクション 区切り文字の間の状態アクション (遷移、入口、出口、状態内の反応) の変更。
状態アクション・アクション 区切り文字の間の「状態アクション」アクション (アクティビティー図内) の変更。
静的属性 初期値の追加または変更 (削除は対象外)。
注: アクションはコード内に複数回現れることがあります。

IBM® Rational® Rhapsody® は、最初に出現するアクション・コードをラウンドトリップします。同じアクション・コードの 2 つ目以降のオカレンスを変更した場合は、最初の変更がラウンドトリップされます。1 つのテクニックは、状態、状態アクション、および遷移アクションで操作を呼び出すことです。アクション・コードの重複や曖昧さをもつラウンドトリップをなくすことができます。

下表に、クラス宣言ファイルでラウンドトリップできる変更を示します。

要素 変更
引数 コンストラクター、操作、トリガーされた操作の引数を追加、削除、および型の変更。

クラス宣言ファイル内の引数の説明の変更は、ラウンドトリップされない。

関連 関連、有向関連、または集約の追加または削除。

CPP_ または JAVA_Roundtrip::Update::AcceptChanges プロパティーを All 値に設定する必要がある。

属性
  • 説明の変更。

    説明の最後に空白行がある場合、説明は失われる。
  • 属性の追加または削除。

    CPP_ または JAVA_Roundtrip::Update::AcceptChanges プロパティーを All 値に設定する必要がある。
  • 既存の属性の名前、型、またはアクセスの変更。
クラス
  • 説明の変更。

    説明の最後に空白行がある場合、説明は失われる。
  • クラス名の変更。

    次のコード生成で、変更したファイルは <new name>.h
    および <new name>.cpp などの新しいファイルに生成される。DMCA を使用するときに、クラス・テキストをモデル内の適切なクラスと再び関連付けするためクラス・ファイルを閉じて再び開く必要がある。
  • 新規クラスの追加。

    追加は、モデル内の関連するパッケージの下に反映される。
コンストラクターと操作
  • 説明の変更。

    説明の最後に空白行がある場合、説明は失われる。
  • コンストラクターまたは操作の追加または削除。

    CPP_ または JAVA_Roundtrip::Update::AcceptChanges プロパティーを All 値に設定する必要がある。
  • 宣言ファイルについては、既存の操作またはコンストラクター引数の型を変更。ただし、名前は変更しない。宣言ファイルと実装ファイルについては、型および名前の両方を変更可能。ただし、変更が実装ファイルのみの場合、名前のみ変更可能で型は不可。
  • 既存の操作の戻り型を変更。
デストラクター 説明の変更。

説明の最後に空白行がある場合、説明は失われる。

ネスト状態のクラス ネスト状態のクラスの追加、削除、または変更。
関係
  • 説明の変更。

    説明の最後に空白行がある場合、説明は失われる。
  • 既存の関係のロール名の変更。

    関係「Class_1* itsClass_1」を与えられた場合、ロール名 itsClass_1 を変更できる。有向関連では、関連クラス Class_1 の変更もできる (双方向関連および集約では関連クラスの変更はできない)。
標準操作 宣言に「inline」を加えて標準操作をインラインに変更する。定義は自動的に生成される。<lang>_CG::Operation::Inline プロパティーは in_source に設定される。その結果として、関数の実装は実装ファイルに保持される (実装ファイルと宣言ファイルの両方に「inline」キーワードが追加される)。
トリガーされた操作 説明の変更。

説明の最後に空白行がある場合、説明は失われる。

ユーザー定義型 ユーザー定義型の追加、削除、または変更。

フィードバック