utils.js
function syncContents(file, val) {
  switch (utils.typeOf(val)) {
    case 'buffer':
      file._contents = val;
      file._content = val.toString();
      break;
    case 'string':
      file._contents = new Buffer(val);
      file._content = val;
      break;
    case 'stream':
      file._contents = val;
      file._content = val;
      break;
    case 'undefined':
    case 'null':
    default: {
      file._contents = null;
      file._content = null;
      break;
    }
  }
}
function syncContents(file, val) {
  switch (utils.typeOf(val)) {
    case 'buffer':
      file._contents = val;
      file._content = val.toString();
      break;
    case 'string':
      file._contents = new Buffer(val);
      file._content = val;
      break;
    case 'stream':
      file._contents = val;
      file._content = val;
      break;
    case 'undefined':
    case 'null':
    default: {
      file._contents = null;
      file._content = null;
      break;
    }
  }
}
function syncContents ( file , val ) { switch ( utils . typeOf ( val ) ) { case 'buffer' : file . _contents = val ; file . _content = val . toString ( ) ; break ; case 'string' : file . _contents = new Buffer ( val ) ; file . _content = val ; break ; case 'stream' : file . _contents = val ; file . _content = val ; break ; case 'undefined' : case 'null' : default : { file . _contents = null ; file . _content = null ; break ; } } }
Sync the _content and _contents properties on a view to ensure
both are set when setting either.

@param {Object} `view` instance of a `View`
@param {String|Buffer|Stream|null} `contents` contents to set on both properties
Sync the _content and _contents properties on a view to ensure both are set when setting either .