問題タブ [ruby-parser]

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

ruby - Ruby の if 文と case 文の形式の等価性

ruby_parser と Ruby2Ruby の gem を使用して、どの条件が評価され、その結果とパラメーターがどのようなものであったかを追跡するコードを作成しています。これをできるだけ単純にするために、AST を少し書き直すことがあります。もちろん、結果がオリジナルとまったく同じように機能することが確実な場合にのみ、それを行うことができます。

次の 3 つの Ruby スニペットは、3 つのドットが有効な Ruby 式に置き換えられていると仮定して、機能が同等であると主張するのは正しいでしょうか? エッジケースを見落としていませんか?

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

ruby - 1.9ハッシュ構文を使用したメトリックの実行

Ruby1.9ハッシュ構文を使用して新しいRailsプロジェクトでMetricalを使用したい

そして私はこのエラーを受け取ります:

少し調べてみたところ、ruby_parser gemは1.9ハッシュ構文をサポートしていないことがわかりました(githubの問題を参照)-参照するバージョンがわからないので、ruby_parser gemを2.3.1に更新しようとしましたが、機能しませんメトリックに含まれる一部のコード品質ツールには、2.0バージョンのruby_parserが必要なためです。

これを解決する方法はありますか(古い構文にロールバックする以外に)?いくつかのコード品質ツールはかなり時代遅れに見えるので、私も少し戸惑っています。RubyToolBoxをチェックすると、この印象が確認されました。それとも私はここで基本的な何かを逃していますか?

(これが参考のために私のGemfile.lockです):

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

ruby - ruby_parser、1.8.7より前のAST、RubyのS式の使い方は?

最近、Ruby 1.8.7 で ParseTree を使用する ror プロジェクトを ruby​​ 1.9.3 に変換しています。

ParseTree は 1.9.3 では動作しないことが判明し、多数の Google 社員で検索しましたが、まだコードの移行が残っています。

ruby_parser、sourcify、parse_tree_reloaded などのさまざまな代替手段が見つかりました...

それらにはすべて制限があります。たとえば、sourcify は動的分析の解析を行うことができません。評価の使用。

これらすべてを調べて、Ruby コミュニティでの AST/Parsing/SExp の最適な使用方法と、AST パスを選択しない場合の Ruby 1.9.3 での代替手段を知りたいと思いました。

いくつかのユースケースのポインタをいただければ幸いです。

ありがとう。

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

ruby - ruby_parser を使用して複数の行を解析するにはどうすればよいですか?

ruby_parserを使用して、ファイル内の複数行の Ruby コードを解析しようとしています。

次のコードを解析したいとしましょう。

次のことを行うと、エラーが発生します。

行に が含まれていないためendです。

を使用して一度に 1 行ずつ渡していFile.readlines(file)ます。

ファイル名を に指定するのが理想的ですがRubyParser、それを理解できないようで、ドキュメントもほとんどありません。

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

ruby - Ruby - json ファイルの配列を解析する

json ファイルの配列があります。これは、単一の json ファイルのサンプルです。

管理者が「ジョブ」に存在する場合、「名前」の値を取得する必要があります。配列内の他の json ファイルについても同じことを行う必要があります。

助けていただければ幸いです。