問題タブ [rust-proc-macros]

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 投票する
0 に答える
831 参照

rust - 他のマクロ内/前にマクロを呼び出す

関数のような手続き型マクロを作成しました。宣言型マクロをパラメーターとして呼び出します。手続き型マクロを処理する前に宣言型マクロを展開する(または手続き型マクロ内で展開する)方法を見つけたいと思っていました。例 (コードはhttps://github.com/Jasperav/rec_macroでも入手できます):

電話サイト:

Proc マクロ クレート:

メッセージ内に、宣言型マクロ ( ) が含まれpanicていることがわかります。この場合(または何らかのタイプ)tの生の値が必要です。私の場合、宣言型マクロは常にまたはに展開する必要があります。hi I am a macrosyn&strString

tを呼び出す前に展開することre、またはtproc マクロ内で手動で展開することは可能ですか? マクロのような機能を備えた proc 内で、マクロの結果 (この場合は「こんにちは、私はマクロです」) を確認したいと考えています。

ありがとう。

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

r - Rust 手続き型マクロからファイルを生成するにはどうすればよいですか?

Rust で R の拡張 API を構築しています。関数に手続き型マクロで注釈を付けて、適切な変換とエラー処理を備えた C ラッパーを生成します。

これにより、メカニズムhello__wrapper__を使用して R から呼び出し可能なC 関数が生成されます。.Call

これに加えて、R メタデータ用の NAMESPACE ファイルを生成する必要があります。

そして、ファイルlib.R

cargo やrustcを拡張してこの追加情報を書き込む最も簡単な方法は何ですか? プロシージャル マクロ コードからファイルを作成するのは悪い考えだと思います。