diff options
Diffstat (limited to 'node_modules/stylus/lib/functions/split.js')
| -rw-r--r-- | node_modules/stylus/lib/functions/split.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/node_modules/stylus/lib/functions/split.js b/node_modules/stylus/lib/functions/split.js new file mode 100644 index 00000000..8513c2ff --- /dev/null +++ b/node_modules/stylus/lib/functions/split.js @@ -0,0 +1,25 @@ +var utils = require('../utils') + , nodes = require('../nodes'); + +/** + * Splits the given `val` by `delim` + * + * @param {String} delim + * @param {String|Ident} val + * @return {Expression} + * @api public + */ + +module.exports = function split(delim, val){ + utils.assertString(delim, 'delimiter'); + utils.assertString(val, 'val'); + var splitted = val.string.split(delim.string); + var expr = new nodes.Expression(); + var ItemNode = val instanceof nodes.Ident + ? nodes.Ident + : nodes.String; + for (var i = 0, len = splitted.length; i < len; ++i) { + expr.nodes.push(new ItemNode(splitted[i])); + } + return expr; +}; |
