Sha256: 051349b566999cd54e389f6b67eff62480a44ac30a0090a1db381530b30c16e9
Contents?: true
Size: 1.16 KB
Versions: 5
Compression:
Stored size: 1.16 KB
Contents
"use strict"; var reduce = require("reducible/reduce") var reducible = require("reducible/reducible") var end = require("reducible/end") var isError = require("reducible/is-error") var PREFIX = "\u200B" var OPEN = PREFIX + "< " var CLOSE = PREFIX + ">\n" var ERROR = PREFIX + "\u26A1 " var DELIMITER = PREFIX + " " var SPECIALS = [ OPEN, CLOSE, ERROR, DELIMITER ] var write = (function() { if (typeof(process) !== "undefined" && typeof(process.stdout) !== "undefined" && typeof(process.stdout.write) === "function") { var inspect = require("util").inspect var slicer = Array.prototype.slice return function write() { var message = slicer.call(arguments).map(function($) { return SPECIALS.indexOf($) >= 0 ? $ : inspect($) }).join("") process.stdout.write(message) } } else { return console.log.bind(console) } })() function print(source) { var open = false reduce(source, function reducePrintSource(value) { if (!open) write(OPEN) open = true if (value === end) write(CLOSE) else if (isError(value)) write(ERROR, value, DELIMITER, CLOSE) else write(value, DELIMITER) }) } module.exports = print
Version data entries
5 entries across 2 versions & 1 rubygems