掲示板一覧   -   トピック一覧
   EA ソースコード生成・コード生成テンプレート
     コード生成で不要なスペースが入る


スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
nakapon
投稿日時: 2023-5-17 13:21
EA Administrator
投稿: 427

コード生成で不要なスペースが入る

サポート宛てにいただきました質問の要約です。

○ご質問

C++のコード生成で操作の引数をポインタ型にするため
UI上で引数の設定をinoutとし、Parameterテンプレート、
Parameter Implテンプレートに追記をしました。
以下、Parameterテンプレートの追記例です。

Parameterテンプレート
----------------------------------------
%PI=" "%
%paramFixed=="T" ? "const" : ""%
%paramIsEnum=="T" ? "enum" : "" %
%RESOLVE_QUALIFIED_TYPE("::", "int")%

$COMMNET="追記部分です"
%if paramKind=="inout"%
*
%endIf%

%PI=""%
%if paramType != "void"%
(以下、省略)
----------------------------------------

しかし、コード生成すると型名の後ろに不要なスペースが入り
期待と異なる結果となります。

結果:<型名> * <引数名>
期待:<型名>* <引数名>

期待結果にする方法を教えてください。


○回答

型名の後ろのスペースは、1行目の「%PI=" "%」により
出力されています。PIマクロの詳細につきましては
下記ヘルプをご確認いただけますでしょうか。

〇PIマクロ
https://www.sparxsystems.jp/help/16.0/the_pi_macro.html

対策の一案としまして
型名を一旦変数に格納し、ご要望の内容に
加工してから出力する方法を
お試しいただけますでしょうか。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ