mirror of
https://github.com/Sevichecc/Urara-Blog.git
synced 2025-05-02 10:39:29 +08:00
35 lines
808 B
Text
35 lines
808 B
Text
'use strict';
|
|
|
|
var Type = require('../type');
|
|
|
|
function resolveYamlNull(data) {
|
|
if (data === null) return true;
|
|
|
|
var max = data.length;
|
|
|
|
return (max === 1 && data === '~') ||
|
|
(max === 4 && (data === 'null' || data === 'Null' || data === 'NULL'));
|
|
}
|
|
|
|
function constructYamlNull() {
|
|
return null;
|
|
}
|
|
|
|
function isNull(object) {
|
|
return object === null;
|
|
}
|
|
|
|
module.exports = new Type('tag:yaml.org,2002:null', {
|
|
kind: 'scalar',
|
|
resolve: resolveYamlNull,
|
|
construct: constructYamlNull,
|
|
predicate: isNull,
|
|
represent: {
|
|
canonical: function () { return '~'; },
|
|
lowercase: function () { return 'null'; },
|
|
uppercase: function () { return 'NULL'; },
|
|
camelcase: function () { return 'Null'; },
|
|
empty: function () { return ''; }
|
|
},
|
|
defaultStyle: 'lowercase'
|
|
});
|