node.js
プリミティブな値を引数で受けとる場合よりもやや面倒。JavaScriptの仕様上どんな値や型でも受けとってしまうので、C++側のチェックコードがどんどん増えていく。動作確認用のコードがこうだとする var Test1 = require('./build/Release/Test1'); Test1.giv…
引き続きv8.hを読みながらNodeモジュールを書く練習をする。モジュールのメソッド定義ですが、名前の通りv8::Argumentsが引数の表現で、[]オペレータでアクセスするとv8::Value型のそれぞれの引数が得られる。型チェックはIsNumberやらIsStringといったメソ…
C++弱者ながらC++でNodeモジュールを作る事にしたのでいろいろと。まずは公式サイトの解説を参考にしてみる。 Addons Node.js v0.6.12 Manual & Documentationl http://nodejs.org/docs/latest/api/addons.html Hello World 最初にHello Worldのコードが載っ…
Nodeで取ってきて、growlnotifiyに突っ込んでみた。サイボウズガルーンのAPIはSOAP(xmlをHTTP POSTで叩けばいい)だけど、ドキュメントが見つからなかったので元々あったライブラリをNodeで動く様に改造して使った。 cybozu-connect - Cybozu API JavaScript …
半日悩んでしまったのだが、python_selectでPython25をアクティブにしていたのが原因だった。node-wafがPython26以上じゃないと動作しないっぽい。 node-waf configure build Checking for program g++ or c++ : /usr/bin/g++ Checking for program cpp : /u…
サーバーにnodeを使いつつTDDをするためにnodeunitを使ってみた。試しにmongoDBの操作を直列で記述できるラッパーを作って、それのテストケースを3つ書いた。テストコード var mongodb = require('mongodb'); var Transaction = require('./mongotransaction…
GithubでjqueryでJSON-RPCするためのライブラリを公開していたのだが、何も考えずにPull Requestを取りこんでいたら全く動かない上に、読解不能かつバグの塊の様な状態になっていた。そろそろ自分で使いたくなったのでテストコードを書いてバグfixした。テス…
depthJSを参考にKinectとブラウザの連携をさせていたのだが、depthJSは中間層がPythonのtornadeなので、node.jsにしてみた。 zeromq.nodehttps://github.com/JustinTulloss/zeromq.node インストールはnpmからできた。コードはこれだけ。 var http = require…