C#

IronScheme を使ってみた

C# から手軽に Scheme のコードを呼び出したくて。 IronScheme をインストールした後、.NET なプロジェクトに IronScheme.dll と IronScheme.Closures.dll を参照設定に追加すれば一通り使えました。 using System; using IronScheme; using IronScheme.Runt…

何かしらの子になってる ToolStripItem の Visible は思い通りに動かない

ToolStripMenuItem の子になっている ToolStripItem の Visible が思うように動かず。 Visible プロパティを get してもなんか全部 false だったりわけわかめだったところ… Visible じゃなくて Available を使いなさい、だと…… はじめてしったよ!まどろっこ…

Enum に別名を割り振る

そういや昔作って最近また別の用事で必要になったので、覚え書き程度にぺたぺた C# 3.0 以降専用... だけど、GetAlias() を拡張メソッドにしなければ 2.0 以前でもいけるはず と思ったら自動プロパティとか var とか使ってました。まぁいいや。 /// <summary> /// Enu</summary>…

Flatten

C#

なんとなく one liner public static IEnumerable<T> Flatten<T>(T root, Func<T, IEnumerable<T>> childrenSelector) { return Enumerable.Repeat(root, 1).Concat(childrenSelector(root).SelectMany(x => Flatten(x, childrenSelector))); } Action<T> をとる DoRecursive を最初に作</t></t,></t></t>…