問題タブ [sun-codemodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
225 参照

java - b().c() のような式を生成するには、sun-codemodel を使用します。

私は、sun-codemodelを使用してソース コードを生成しようとしていますが、長い間 API をチェックしていますが、うまくいきません。

最初の部分、つまり a(xxx) のみを生成します

何か案は?

0 投票する
5 に答える
2877 参照

java - Javaでのコードジェネレーターのより良い方法は?

グラフが入ったクラスがあります。グラフを繰り返し、グラフを作成する文字列を作成してから、その文字列をJavaファイルに書き込みます。これを行うためのより良い方法はありますか、私はJDTとCodeModelについて読みましたが、実際にそれを使用する方法のヒントが必要です。

編集

私は正規表現コードジェネレーターを実行していますが、これまでのところ、正規表現を有向グラフで表されるDFAに変換しました(grailライブラリを使用)。DFAがある場合、次のステップは3つのメソッドを持つクラスを生成することです。最初のメソッドは同じグラフ(DFA)を作成し、2番目のメソッドは1つのノードから別のノードに移動し、3番目のメソッドは入力文字列が受け入れられる場合に一致します。正規表現の入力に応じて変更されるのは最初のメソッドのみで、他の2つは静的であり、生成されたJavaクラスごとに同じです。

私の文字列ベースのアプローチは次のようになります。

0 投票する
1 に答える
1729 参照

java - Sun/Oracle CodeModel ライブラリを使用して型キャストする方法は?

Java CodeModel ライブラリを使用してコードを生成しようとしています。生成されたコードで、型キャストを実行する必要があります。こんなものが欲しい…

ライブラリで見つけた唯一のサポートは、JCast JExpr.cast(JType type, JExpression expr)を使用することです。ただし、Eclipse によると、戻り値の型である JCast は public ではありません。正確なエラーは、「タイプ com.sun.codemodel.JCast が表示されません」です。

これが私がやっていることの簡単な例です。

ライブラリを間違って使用していますか、または目標を達成するための別の方法はありますか?

0 投票する
2 に答える
1002 参照

java - CodeModel com.sun.codemodel を使用して特定のインデックスで値を取得する方法

クラスの生成に com.sun.codemodel を使用しています。インデックス引数に応じて配列値を動的に取得する必要があります。

だから私は配列を返すと仮定する呼び出しを持っています

この場合、getRoles() は配列を返し、特定のインデックスでオブジェクトを取得したいと考えています。このようなもの

私は何をすべきか?

0 投票する
1 に答える
504 参照

java - CodeModel の JExpr.plus メソッドを使用して不要なブラケットを削除するにはどうすればよいですか?

メソッドを使用JExpr.plus()して文字列を形成していますが、構文的には正しいですが、括弧がたくさんあります。例えば:

戻り値

そして、私はそれが欲しい

0 投票する
1 に答える
1535 参照

java - JCodeModelで作成するには?

JCodeModel で JClass.narrow を使用して型に必要なジェネリックを作成しましたが、このようなものを生成する方法がわかりません。

をどのように生成しますか? 部分を拡張しますか?

どんな助けでも大歓迎です。

0 投票する
1 に答える
758 参照

java - CodeModelで存在するためのメソッドを追加する

CodeModelを使用してインターフェイスに抽象メソッドを追加しようとしています。これは可能ですか?

実際のクラスを参照した後、メソッドを追加する方法がわかりませんか?実はJDefinedClassとして使いたいです。

0 投票する
1 に答える
263 参照

java - 変数の使用法をコードモデルのメソッドに置き換える

クラスでフィールドを定義し、この特定のクラスで参照を使用できるソリューションを探しています。コードモデルは、フィールドをインスタンス化するためのメソッドを作成し、フィールドの使用法を作成されたメソッドに置き換える必要があります。

誰かが私を助けてくれることを願っています。

未処理クラス

codeModel 使用後のクラス

0 投票する
3 に答える
1584 参照

java - 既存のソース ファイルから JCodeModel を作成する

構文的に無効である可能性のあるコード スニペットを含む Java ソース コードを作成したいと考えています。これはcom.sun.codemodel.JBlock#directStatement() メソッドで可能です。

私の問題は、既存の (構文的に有効な) ソース ファイルを変更したいのですが、ファイル (または String や Stream など) から JCodeModel を作成する方法が見つからないことです。

JCodeModel でこれを行う方法はありますか?

(代わりに Eclipse JDT/AST フレームワークを使用することもできますが、コード スニペットを直接追加するオプションは提供されていないようです ...)

0 投票する
1 に答える
661 参照

java - AbstractEntityを拡張しますコードモデル付き

CodeModelでこれを生成する方法を知っている人はいますか?

私はすでにこのようなものを持っています..ほとんどそこに..

どうすればこれを作ることができますか

の中へ

ありがとう