Skip to content

Instantly share code, notes, and snippets.

#include <cstdlib>
#include <iostream>
struct Die {
template <typename T>
operator T() {
std::cout << "Die!!" << std::endl;
std::exit(1);
}
} die;
@aita
aita / gist:1249736
Created September 29, 2011 00:55
Memcache Lock
class MemcacheLock(object):
"""
memcacheのLockオブジェクト
"""
LOCK_CACHE_VALUE = 'ALL'
def __init__(self, cache, key):
self.cache = cache
self.key = key
@aita
aita / gist:1300634
Created October 20, 2011 07:57
ListFormView
class ListFormMixin(MultipleObjectMixin, FormMixin):
'''フォームを持つListViewの実装のためのMixin
memo:
get_context_dataメソッドが重複する
'''
class BaseListFormView(ListFormMixin, View):
def get(self, request, *args, **kwargs):
@aita
aita / gist:1351593
Created November 9, 2011 14:30
parallel for
import os
import sys
class ParallelFor(object):
def __init__(self, iterable, num_children=2):
self.iterable = iterable
self.num_children = num_children
self._is_child = False
self._working = None
@aita
aita / query.py
Created November 29, 2011 06:46
pattern query
from django.utils import tree
PATTERN_DICT = {
"ALPHABET": r"a-zA-Z",
"NUMBER": r"0-9",
}
class S(tree.Node):
"""
@aita
aita / ruby.py
Created February 2, 2012 02:25
数値のルビ生成
# coding:utf-8
from StringIO import StringIO
RUBY_LIST = (
(100, u"ひゃく"),
(10, u"じゅう"),
(9, u"きゅう"),
(8, u"はち"),
@aita
aita / gist:5655251
Created May 27, 2013 05:00
tokenizer
# -*- coding:utf-8 -*-
import re
regexps = {
'escaped': ur'''
\\ # Escape
((?P<standard>["\\/bfnrt]) # Standard escapes
| (u(?P<unicode>[0-9A-Fa-f]{4}))) # uXXXX
''',
@aita
aita / gist:5698043
Last active December 18, 2015 00:39
QUnitとPhantomJSによるテストの方法

PhantomJSとQUnitによる自動テスト

JavaScriptをテストするのに、テストフレームワークとして、 QUnitを使い、PhantomJSでコンソールでテストできるようにした。

QUnitによるブラウザテスト

@aita
aita / gist:5829050
Last active December 18, 2015 18:59
Skype botの構築

Skype botの構築

  • 対象はUbuntu 12.04 LTS
  • python, distriute, pip, virtualenv, virtualenvwrapperがインストールされてる前提

参考URL

@aita
aita / gist:5890114
Last active December 19, 2015 03:29
numpy&scipyのosxへのインストール