| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 
							- {{## def.assignDefault:
 
-   {{? it.compositeRule }}
 
-     {{
 
-       if (it.opts.strictDefaults) {
 
-         var $defaultMsg = 'default is ignored for: ' + $passData;
 
-         if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);
 
-         else throw new Error($defaultMsg);
 
-       }
 
-     }}
 
-   {{??}}
 
-     if ({{=$passData}} === undefined
 
-       {{? it.opts.useDefaults == 'empty' }}
 
-         || {{=$passData}} === null
 
-         || {{=$passData}} === ''
 
-       {{?}}
 
-     )
 
-       {{=$passData}} = {{? it.opts.useDefaults == 'shared' }}
 
-                          {{= it.useDefault($sch.default) }}
 
-                        {{??}}
 
-                          {{= JSON.stringify($sch.default) }}
 
-                        {{?}};
 
-   {{?}}
 
- #}}
 
- {{## def.defaultProperties:
 
-   {{
 
-     var $schema = it.schema.properties
 
-       , $schemaKeys = Object.keys($schema); }}
 
-   {{~ $schemaKeys:$propertyKey }}
 
-     {{ var $sch = $schema[$propertyKey]; }}
 
-     {{? $sch.default !== undefined }}
 
-       {{ var $passData = $data + it.util.getProperty($propertyKey); }}
 
-       {{# def.assignDefault }}
 
-     {{?}}
 
-   {{~}}
 
- #}}
 
- {{## def.defaultItems:
 
-   {{~ it.schema.items:$sch:$i }}
 
-     {{? $sch.default !== undefined }}
 
-       {{ var $passData = $data + '[' + $i + ']'; }}
 
-       {{# def.assignDefault }}
 
-     {{?}}
 
-   {{~}}
 
- #}}
 
 
  |