anti scroll

ブラウザと小説の新しい関係を模索する

jingoo1.2.0 release

jingoo1.2.0にて、オブジェクト型にThash型を追加しました。

これまでのオブジェクト型は連想リスト、つまり(string * string) listだけでしたが、フィールド数の多いオブジェクトで、かつ表示件数が多い場合にパフォーマンスが落ちるので、ハッシュ型のオブジェクトを用意しました。

例えばこんな感じです。

let person = Hashtbl.create 10 in
let () = Hashtbl.add person "name" (Tstr "taro") in
let () = Hashtbl.add person "email" (Tstr "example@test.com") in
Jg_template.from_file "aaa.tmpl" ~models:[
  ("person", Thash person);
]

テンプレート内でのオブジェクトの参照は連想リストオブジェクトと同じで、こんな感じです。

name = {{person.name}}
email = {{person.email}}

上の例ではオブジェクトの作成を手で書いてますが、さすがに面倒なので実際には各自でヘルパ関数を作ることになると思います。