Source file interpreter_objects.ml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
open Base
open Liquid_syntax
open Syntax
open Values
let make_forloop_ctx ctx index length =
let forloop_obj = Object (
Obj.empty
|> Obj.add "index" (num_int (index + 1))
|> Obj.add "length" (num_int length)
|> Obj.add "first" (Bool (index = 0))
|> Obj.add "index0" (num_int index)
|> Obj.add "last" (Bool (index = length - 1))
|> Obj.add "rindex" (num_int (length - index))
|> Obj.add "rindex0" (num_int (length - index - 1))
) in
ctx
|> Ctx.add Settings.forloop forloop_obj
let request () =
let request_obj = Object (
Obj.empty
|> Obj.add "design_mode" (Bool false)
|> Obj.add "host" (String "")
|> Obj.add "origin" (String "")
|> Obj.add "page_type" (String "")
|> Obj.add "path" (String "")
) in
request_obj