summaryrefslogtreecommitdiff
path: root/encoding/json/path/path.ha
blob: 819e9f5a587d3751662112c6b4223ba990fefdd1 (plain)
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
// A compiled JSONPath query.
export type query = []segment;

export type segment_type = enum {
	CHILD,
	DESCENDANT,
};

export type segment = struct {
	stype: segment_type,
	selector: selector,
};

export type selector = (str | wild | index | slice | filter);

export type wild = void;

export type index = int;

export type slice = struct {
	start: (int | void),
	end: (int | void),
	step: (int | void),
};

export type filter = void; // TODO