お米 is ライス

C#やらUnityやらを勉強していて、これはメモっといたほうがええやろ、ということを書くつもりです

2021-11-01から1ヶ月間の記事一覧

【C#】SpracheでJsonのパーサを実装する方法を1行ずつ解説

下記のサンプルをパースすることを目的とする サンプルはJSON入門 - とほほのWWW入門様から引用させていただいた(いい感じにいろいろなパターンが詰め込まれているので非常に便利でした) { "color_list": [ "red", "green", "blue" ], "num_list": [ 123, …

Expressionで辞書に登録されていればそれを返すし、登録されていなければデフォルト値を登録したうえでそれを返すコード

Expression完全に理解した private static readonly ParameterExpression dicParameterExpression = Expression.Parameter(typeof(Dictionary<string, object>), "dic"); private static readonly MethodInfo containsKeyMethod = typeof(Dictionary<string, object>).GetMethod("ContainsKey</string,></string,>…

C#のExpression(式木)を使って文字列で与えられた条件文をラムダ式に変換する

やること 本体の関数はCreateExpressionで、下記のようなことを行っている 一番外側のWhitespaceは除外 式全体が括弧で囲まれている場合、不要な括弧なので除外 一番優先度の低い演算子を探して、本体の演算子とする 括弧で囲まれた位置にある演算子は無視(…

UniRxでUniTaskをSubscribeしたい

あるイベントが発行されたときに、非同期的な処理を開始したかった(例:マウスがクリックされた時一定時間毎フレーム何か処理をするみたいな) パターン① UniTask _task; private void Start() { _task = UniTask.Defer(() => HogeTask()); this.UpdateAsOb…