Skip to content

Instantly share code, notes, and snippets.

@ritalin
ritalin / gist:4705176
Created February 4, 2013 05:32
alternative idea for toDictionary implementation
<?php
namespace Ginq;
require_once "PHPUnit/Framework/IncompleteTestError.php";
require_once dirname(dirname(__FILE__)) . "/src/Ginq.php";
class GinqTest2 extends \PHPUnit_Framework_TestCase {
public static function main()
{
@ritalin
ritalin / gist:5003448
Created February 21, 2013 09:23
Using cheerio-soupselect as cheerio selector implementation
/*
* Module dependencies
*/
var CSSselect = function(query, dom) {
return require('cheerio-soupselect').select(dom, query);
};
var isArray = Array.isArray;
/*
* Select function
@ritalin
ritalin / gist:5046903
Created February 27, 2013 10:19
フラットな配列にならないお・・・・
<?php
var_dump(
Ginq::from(['a' => [1,2], 'b' => [3]])
->selectMany(function ($group) { return $group; })
->toArray()
);
// 結果
// array(2) { [0]=> int(3) [1]=> int(2) }
@ritalin
ritalin / gist:5114252
Last active December 14, 2015 16:19
jQuery iterator for Haxe
package sample;
import jQuery.JQuery;
class JQueryHelper {
public static function asIterable(query: JQuery): Iterable<JQuery> {
return new JQueryIterable(query);
}
}
package sample;
import jQuery.JQuery;
using Lambda;
class JQueryHelper {
/*
* アニメーションキューを作成する
*/
@ritalin
ritalin / gist:5167881
Last active December 14, 2015 23:48
HaxeのType Macroによる、式木展開のサンプル

プロパティの参照

この式が

function(x) { 
  return x.y; 
}

こんな式木に

@ritalin
ritalin / gist:5293015
Created April 2, 2013 15:16
Xamarin Studio (4.0 Build 2003) on MacOS (Lion) で、正しく読み込んでくれない・・・・
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{4925A630-B079-445d-BCD4-3A9C94FE9307}") = "FunScript.Data", "FunScript.Data\FunScript.Data.fsproj", "A2244B1E-625C-4C6C-8E00-38755B8613BB"
EndProject
Project("{4925A630-B079-445d-BCD4-3A9C94FE9307}") = "FSharp.Data", "..\FSharp.Data\src\FSharp.Data.fsproj", "6EBFDE55-9687-40A9-8C1A-6E204ECB117F"
EndProject
Project("{4925A630-B079-445d-BCD4-3A9C94FE9307}") = "FSharp.Data.DesignTime", "..\FSharp.Data\src\FSharp.Data.DesignTime.fsproj", "B85F245B-3FB9-4253-8251-16F98F05B6EC"
EndProject
Project("{4925A630-B079-445d-BCD4-3A9C94FE9307}") = "FSharp.Data.Experimental", "..\FSharp.Data\src\FSharp.Data.Experimental.fsproj", "{736F3762-88F1-4A5C-A494-E3443DA9BD8F}"
@ritalin
ritalin / composer.json
Last active December 15, 2015 22:39
Silex使った場合の例
{
"require": {
"silex/silex": "1.0.*@dev",
"symfony/validator": "2.1.*"
},
...
}
@ritalin
ritalin / Providers.fs
Last active December 16, 2015 05:09
F# TypeProviderの練習 F# SamplesのHelloWorldProviderを題材に、仕組みを追いかけていく 環境:Mono 3.0.7 on MacOS X Lion
// インスタンスメソッドを認識してもらえるようになるまで
namespace Samples
open System
open System.Reflection
open Microsoft.FSharp.Core.CompilerServices
open Microsoft.FSharp.Quotations
open ProviderImplementation.ProvidedTypes
@ritalin
ritalin / build.gradle
Created April 16, 2013 08:43
Gradleのスクリプトから、Eclipse Maven Project吐くためのタスクとか .classpathのカスタマイズは、http://d.hatena.ne.jp/int128/20121010/1349884711 に助けられました。
eclipse {
project {
natures = [
'org.eclipse.jdt.core.javanature',
'org.eclipse.m2e.core.maven2Nature'
]
buildCommand 'org.eclipse.m2e.core.maven2Builder'
}