1-->macro_varg Crud_row_list %CMD%
2-->callmacro Crud_set_Row_list_%CMD%	%VAR_ARGS%
3-->endmacro
4
5
6-->macro Crud_set_Row_list_
7-->endmacro
8
9
10-->macro_varg Crud_set_Row_list_Octet %LITERAL%
11-->varlet %PAYLOAD% %PAYLOAD%   field{
12-->varlet %PAYLOAD% %PAYLOAD%     type: LITERAL
13-->varlet %PAYLOAD% %PAYLOAD%     literal {
14-->varlet %PAYLOAD% %PAYLOAD%       type: V_OCTETS
15-->varlet %PAYLOAD% %PAYLOAD%       v_octets{
16-->varlet %PAYLOAD% %PAYLOAD%         value: %LITERAL%
17-->varlet %PAYLOAD% %PAYLOAD%         content_type:2
18-->varlet %PAYLOAD% %PAYLOAD%       }
19-->varlet %PAYLOAD% %PAYLOAD%     }
20-->varlet %PAYLOAD% %PAYLOAD%   }
21
22-->callmacro Crud_row_list	%VAR_ARGS%
23-->endmacro
24
25-->macro_varg Crud_set_Row_list_Null
26-->varlet %PAYLOAD% %PAYLOAD%   field{
27-->varlet %PAYLOAD% %PAYLOAD%     type: LITERAL
28-->varlet %PAYLOAD% %PAYLOAD%     literal {
29-->varlet %PAYLOAD% %PAYLOAD%       type: V_NULL
30-->varlet %PAYLOAD% %PAYLOAD%     }
31-->varlet %PAYLOAD% %PAYLOAD%   }
32
33-->callmacro Crud_row_list	%VAR_ARGS%
34-->endmacro
35
36
37-->macro_varg Crud_set_Row_list	%CMD%
38-->varlet %PAYLOAD% %PAYLOAD%   row {
39-->callmacro Crud_row_list	%VAR_ARGS%
40-->varlet %PAYLOAD% %PAYLOAD%   }
41-->endmacro
42
43
44-->macro_varg Crud_set_Row_octet	%OCTET%
45-->varlet %PAYLOAD% %PAYLOAD%   row {
46-->callmacro Crud_set_Row_list_Octet %OCTET%
47-->varlet %PAYLOAD% %PAYLOAD%   }
48-->callmacro Crud %VAR_ARGS%
49-->endmacro
50
51-->macro_varg Crud_set_Row_null	%OCTET%
52-->varlet %PAYLOAD% %PAYLOAD%   row {
53-->callmacro Crud_set_Row_list_Null
54-->varlet %PAYLOAD% %PAYLOAD%   }
55-->callmacro Crud %VAR_ARGS%
56-->endmacro
57
58
59-->macro_varg Crud_insert
60-->varlet %PAYLOAD%
61-->callmacro Crud %VAR_ARGS%
62Mysqlx.Crud.Insert {
63  %PAYLOAD%
64}
65-->endmacro
66
67
68-->macro Insert_raw  %MODEL%  %TABLE%  %PAYLOAD%
69Mysqlx.Crud.Insert {
70  data_model: %MODEL%
71  collection { name: '%TABLE%' schema: 'xtest'}
72  %PAYLOAD%
73}
74-->endmacro
75
76-->macro Insert  %MODEL%  %TABLE%  %ROWS%  %UPSERT%  %ERROR%
77-->callmacro Insert_raw	%MODEL%	%TABLE%	%ROWS% upsert:%UPSERT%
78-->expecterror %ERROR%
79-->recvresult
80-->endmacro
81
82-->macro Insert_one  %MODEL%  %TABLE%  %ROW%  %ERROR%
83-->callmacro Insert %MODEL%	%TABLE%	row{field{%ROW%}}	false	%ERROR%
84-->endmacro
85
86-->macro Insert_two  %MODEL%  %TABLE%  %ROW1%  %ROW2%  %ERROR%
87-->callmacro Insert %MODEL%	%TABLE%	row{field{%ROW1%}} row{field{%ROW2%}}	false	%ERROR%
88-->endmacro
89
90-->macro Upsert_one  %MODEL%  %TABLE%  %ROW%  %ERROR%
91-->callmacro Insert %MODEL%	%TABLE%	row{field{%ROW%}}	true	%ERROR%
92-->endmacro
93
94-->macro Upsert_two  %MODEL%  %TABLE%  %ROW1%  %ROW2%  %ERROR%
95-->callmacro Insert %MODEL%	%TABLE%	row{field{%ROW1%}} row{field{%ROW2%}}	true	%ERROR%
96-->endmacro
97