問題タブ [crystal-lang]

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

crystal-lang - Crystalで16進文字列をバイト配列に変換するには?

Crystalで16進文字列をバイト配列に変換するにはどうすればよいですか?

例:

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

crystal-lang - INSTANCE = new in class は、コンパイル後に自動的に実行されますか、それとも初めてアクセスされたときに実行されますか?

質問はそれをすべて言います。例えば:

コンパイル後に自動的に出力されるのではなく、Foo::INSTANCE がアクセスされたときにのみ出力されます。

期待される動作ですか?

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

crystal-lang - 代入で変数名を繰り返さない

これを減らす方法を見たと思います:

このようなものに:

しかし、それは機能せず、混乱しているに違いありません。実際にこれを行う方法があるかどうか疑問に思っていますか? ありがとう

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

crystal-lang - Crystal プログラムで #put を受け取るオブジェクトは?

この基本的な Crystal プログラムでは:

の受信者は誰#putsですか? ですかself

  • もしそうなら、どこにも定義が見つからないのはなぜですか?
  • そうでない場合、誰ですか?
0 投票する
2 に答える
273 参照

json - Crystal オブジェクトを JSON のカスタム ルート オブジェクトにラップする

次のようなクラスがあります

{root: "name of node"}JSON.mapping 内で指定することにより、JSON オブジェクトで単一の属性をラップできることを知っています。Fooしかし、クラス全体でそれを行う方法はありますか?

出力が次のようになるようにするには?

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

crystal-lang - マクロ内のクラスまたは構造体を再度開く

「通常の」コードでは、クラスがorklass.is_a?(Reference.class)で実装されているかどうかを確認するために使用できます。classstruct

ただし、マクロで同じことを行って、上記のクラス/構造体を再度開く方法がわかりません。

例: クラスをマクロに渡す場合Array、 で始まるコードを生成する必要がありますclass Arrayが、 a のTuple場合はstruct Tuple.

Crystal::Macrosのドキュメントを何度も読みましたが、必要なことを実行してコンパイルできるコードを思いつくことができません。