function ValueToProtocolValue_(value, mirror_serializer) {
  // Format the value based on its type.
  var json;
  switch (typeof value) {
    case 'object':
      if (value instanceof Mirror) {
        json = mirror_serializer.serializeValue(value);
      } else if (IS_ARRAY(value)){
        json = ArrayToProtocolArray_(value, mirror_serializer);
      } else {
        json = ObjectToProtocolObject_(value, mirror_serializer);
      }
      break;

    case 'boolean':
    case 'string':
    case 'number':
      json = value;
      break;

    default:
      json = null;
  }
  return json;
}
function ValueToProtocolValue_(value, mirror_serializer) {
  
  var json;
  switch (typeof value) {
    case 'object':
      if (value instanceof Mirror) {
        json = mirror_serializer.serializeValue(value);
      } else if (IS_ARRAY(value)){
        json = ArrayToProtocolArray_(value, mirror_serializer);
      } else {
        json = ObjectToProtocolObject_(value, mirror_serializer);
      }
      break;

    case 'boolean':
    case 'string':
    case 'number':
      json = value;
      break;

    default:
      json = null;
  }
  return json;
}
function ValueToProtocolValue_ ( value , mirror_serializer ) { // Format the value based on its type. var json ; switch ( typeof value ) { case 'object' : if ( value instanceof Mirror ) { json = mirror_serializer . serializeValue ( value ) ; } else if ( IS_ARRAY ( value ) ) { json = ArrayToProtocolArray_ ( value , mirror_serializer ) ; } else { json = ObjectToProtocolObject_ ( value , mirror_serializer ) ; } break ; case 'boolean' : case 'string' : case 'number' : json = value ; break ; default : json = null ; } return json ; }
Convert a value to its debugger protocol representation.
@param {*} value The value to format as protocol value.
@param {MirrorSerializer} mirror_serializer The serializer to use if any
mirror objects are encountered.
@return {*} Protocol value.
Convert a value to its debugger protocol representation .