問題タブ [rascal]

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 に答える
446 参照

abstract-syntax-tree - Rascal Java m3 AST の修飾子を確認します

Rascal m3 Java Abstract Syntax ツリーに修飾子ノードは存在しますか? 特定のメソッドがパブリック、プライベート、または保護されているかどうかを確認したい。

説明では、抽象データ型が宣言されていますが、アクセスしようとしたファイルには一致するものはありません。

他の ADT にも修飾子へのリンクはありません。修飾子を見つけようとするコードの下。

public void visitModifier(loc file){ Declaration decl = createAstFromFile(file, true); visit(decl){ case \private(): println("private"); case \public(): println("public"); case \protected(): println("protected"); } }

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

rascal - 補間を使用した文字列のマージン文字

文字列リテラル内のマージン文字 (一重引用符) は、マージン文字の前の行の最初の部分を無視する必要があることを示します。同じ行のそれ以降のすべてを無視する必要があることを示す、補完的な「右マージン」文字はありますか?

(これは、文字列内の補間された式内にやや長いコードを記述するときに役立つことに気付きました。そのコードを読みやすくするために、複数の行に分割したいと考えていますが、そのように導入された改行は、文字列リテラル.そして <...> 内に改行を置くと見苦しくなります.)

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

rascal - 型キャストを行う関数を書く

Rascal コードで頻繁に発生するアクティビティのように見える型キャストを行う関数を作成しようとしています。しかし、私はそれを正しく理解できないようです。次のいくつかのバリエーションは失敗します。

誰かが私を助けることができますか?

いくつかの詳細情報: 式が特定の型を持っていることを Rascal に伝えるために、"Type Var" 形式のパターンに対して (つまり、変数宣言に対して) パターン マッチングを頻繁に使用します。

これは通常、myexp が map[str,value] 型を持っていることを知っている場合ですが、マッチングを省略すると、Rascal の型チェック メカニズムに問題が発生します。間違いに対してもう少し防御的になるために、私は通常、マッチングが失敗した場合に例外が発生する if-then-else でマッチング構造をラップします。

代わりに書くことができるように、一般的に仕事をする単一の関数を使用して、そのような同様のコードをすべて短縮したいと思います。

PS。Rascal で値型を Map にキャストする方法も参照してください。

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

rascal - Rascal構文仕様におけるSDF2順列句構文(<<..>>)の表現方法

Rascalを使ってVS COBOL IIの仕様を試しています。COBOL には、順列句構文 <<..>> を使用して SDF で直接処理される、いわゆる順列句を持つ多くの構造があります。Rascal を使用してこれを行う方法を見つけることができませんでした。私は確かに初心者ですが、これに対する答えが見つかりませんでした。

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

java - Rascal プロジェクトと Java プロジェクトの統合

Rascal でコード ジェネレーターを開発しましたが、それを Java で開発されたツールと統合したいと考えています。Rascal プロジェクト用の jar ファイルを eclipse で生成して Java プロジェクトに入れようとしましたが、プロジェクトの Rascal ファイルを jar に入れるだけです。Rascal Tutor と here を検索しましたが、何も見つかりませんでした。

誰かが私がこれを行う方法を知っていますか?

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

rascal - シンタックス カラーリングのしくみ

文法で構文の色付けを行う正しい方法は何ですか? 私はそれが次のようだったと信じています:

しかし、それは私にはうまくいきません。ファイルは、解析エラーのない単なる黒いテキストです (IMP エディターで開かれ、パーサーが作成されるのを見ました)。

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

context-free-grammar - 動的セパレーターを使用した CSV ファイルの解析

次の解析問題を解こうとしましたが、失敗しました:

ファイル内の特定のコマンドで区切り記号を変更できる CSV ファイルがあり、現在の区切り記号はスラッシュでエスケープできます。この例を見てください:

これは可能ですか?そしてどうやって?