/**
 * @name node.sys
 * @namespace
 */

goog.provide("node.sys");

goog.require("node.stream.Stream");

/**
 *
 */
node.sys.print = function() {
  return node.sys.core_.print();
};

/**
 *
 */
node.sys.puts = function() {
  return node.sys.core_.puts();
};

/**
 * @param {string} x
 */
node.sys.debug = function(x) {
  return node.sys.core_.debug(x);
};

/**
 * @param {string} x
 */
node.sys.error = function(x) {
  return node.sys.core_.error(x);
};

/**
 * @param {Object} obj
 * @param {string} showHidden
 * @param {number} depth
 * @param {string} colors
 */
node.sys.inspect = function(obj, showHidden, depth, colors) {
  return node.sys.core_.inspect(obj, showHidden, depth, colors);
};

/**
 *
 */
node.sys.p = function() {
  return node.sys.core_.p();
};

/**
 * @param {string} msg
 */
node.sys.log = function(msg) {
  return node.sys.core_.log(msg);
};

/**
 *
 */
node.sys.exec = function() {
  return node.sys.core_.exec();
};

/**
 * @param {node.stream.Stream} readStream
 * @param {node.stream.Stream} writeStream
 * @param {function(Error?,...[*]):undefined} callback
 */
node.sys.pump = function(readStream, writeStream, callback) {
  return node.sys.core_.pump(readStream, writeStream, callback);
};

/**
 * @param {Function} ctor
 * @param {Function} superCtor
 */
node.sys.inherits = function(ctor, superCtor) {
  return node.sys.core_.inherits(ctor, superCtor);
};


/**
 * @private
 * @type {*}
 */
node.sys.core_ = require("sys");