.gitignore added
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / ajv / lib / dot / oneOf.jst
1 {{# def.definitions }}
2 {{# def.errors }}
3 {{# def.setupKeyword }}
4 {{# def.setupNextLevel }}
5
6 {{
7   var $currentBaseId = $it.baseId
8     , $prevValid = 'prevValid' + $lvl
9     , $passingSchemas = 'passingSchemas' + $lvl;
10 }}
11
12 var {{=$errs}} = errors
13   , {{=$prevValid}} = false
14   , {{=$valid}} = false
15   , {{=$passingSchemas}} = null;
16
17 {{# def.setCompositeRule }}
18
19 {{~ $schema:$sch:$i }}
20   {{? {{# def.nonEmptySchema:$sch }} }}
21     {{
22       $it.schema = $sch;
23       $it.schemaPath = $schemaPath + '[' + $i + ']';
24       $it.errSchemaPath = $errSchemaPath + '/' + $i;
25     }}
26
27     {{# def.insertSubschemaCode }}
28   {{??}}
29     var {{=$nextValid}} = true;
30   {{?}}
31
32   {{? $i }}
33     if ({{=$nextValid}} && {{=$prevValid}}) {
34       {{=$valid}} = false;
35       {{=$passingSchemas}} = [{{=$passingSchemas}}, {{=$i}}];
36     } else {
37     {{ $closingBraces += '}'; }}
38   {{?}}
39
40     if ({{=$nextValid}}) {
41       {{=$valid}} = {{=$prevValid}} = true;
42       {{=$passingSchemas}} = {{=$i}};
43     }
44 {{~}}
45
46 {{# def.resetCompositeRule }}
47
48 {{= $closingBraces }}
49
50 if (!{{=$valid}}) {
51   {{# def.extraError:'oneOf' }}
52 } else {
53   {{# def.resetErrors }}
54 {{? it.opts.allErrors }} } {{?}}