lib/functions/json.js
function oldJson(json, local, namePrefix){
  if (namePrefix) {
    utils.assertString(namePrefix, 'namePrefix');
    namePrefix = namePrefix.val;
  } else {
    namePrefix = '';
  }
  local = local ? local.toBoolean() : new nodes.Boolean(local);
  var scope = local.isTrue ? this.currentScope : this.global.scope;

  convert(json);
  return;

  function convert(obj, prefix){
    prefix = prefix ? prefix + '-' : '';
    for (var key in obj){
      var val = obj[key];
      var name = prefix + key;
      if ('object' == typeof val) {
        convert(val, name);
      } else {
        val = utils.coerce(val);
        if ('string' == val.nodeName) val = utils.parseString(val.string);
        scope.add({ name: namePrefix + name, val: val });
      }
    }
  }
}
function oldJson(json, local, namePrefix){
  if (namePrefix) {
    utils.assertString(namePrefix, 'namePrefix');
    namePrefix = namePrefix.val;
  } else {
    namePrefix = '';
  }
  local = local ? local.toBoolean() : new nodes.Boolean(local);
  var scope = local.isTrue ? this.currentScope : this.global.scope;

  convert(json);
  return;

  function convert(obj, prefix){
    prefix = prefix ? prefix + '-' : '';
    for (var key in obj){
      var val = obj[key];
      var name = prefix + key;
      if ('object' == typeof val) {
        convert(val, name);
      } else {
        val = utils.coerce(val);
        if ('string' == val.nodeName) val = utils.parseString(val.string);
        scope.add({ name: namePrefix + name, val: val });
      }
    }
  }
}
function oldJson ( json , local , namePrefix ) { if ( namePrefix ) { utils . assertString ( namePrefix , 'namePrefix' ) ; namePrefix = namePrefix . val ; } else { namePrefix = '' ; } local = local ? local . toBoolean ( ) : new nodes . Boolean ( local ) ; var scope = local . isTrue ? this . currentScope : this . global . scope ; convert ( json ) ; return ; function convert ( obj , prefix ) { prefix = prefix ? prefix + '-' : '' ; for ( var key in obj ) { var val = obj [ key ] ; var name = prefix + key ; if ( 'object' == typeof val ) { convert ( val , name ) ; } else { val = utils . coerce ( val ) ; if ( 'string' == val . nodeName ) val = utils . parseString ( val . string ) ; scope . add ( { name : namePrefix + name , val : val } ) ; } } } }
Old `json` BIF.

@api private
Old json BIF .