// Copyright 2014, 2015, 2016, 2017, 2018 Simon Lydell // License: MIT. (See LICENSE.)

Object.defineProperty(exports, “__esModule”, {

value: true

})

// This regex comes from regex.coffee, and is inserted here by generate-index.js // (run `npm run build`). exports.default = /((['“])(?:(?!2|\).|\(?:rn|))*(2)?|`(?:[^`\$]|\[sS]|$(?!{)|${(?:[^{}]|{[^}]*}?)*}?)*(`)?)|(//.*)|(/*(?:[^]|(?!/))*(*/)?)|(/(?!*)(?:[(?:(?![]\]).|\.)*]|(?![/]\]).|\.)+/(?:(?!s*(?:b||[+-!](?!=)|.?d))|{1,6}b(?!|!=?({”>s*(?:|/(?![/*])))))|(0[da-fA-F]+|0[0-7]+|0[01]+|(?:d*.d+|d+.?)(?:[+-]?d+)?)|((?!d)(?:(?!s)|\u{4}|\u{[da-fA-F]+})+)|(–|++|&&||||=>|.{3}|(?:[+-/%&|^]|*{1,2}|<{1,2}|>{1,3}|!=?|={1,2})=?|[?~.,:;[](){}])|(s+)|(^$|[sS])/g

exports.matchToToken = function(match) {

var token = {type: "invalid", value: match[0], closed: undefined}
     if (match[ 1]) token.type = "string" , token.closed = !!(match[3] || match[4])
else if (match[ 5]) token.type = "comment"
else if (match[ 6]) token.type = "comment", token.closed = !!match[7]
else if (match[ 8]) token.type = "regex"
else if (match[ 9]) token.type = "number"
else if (match[10]) token.type = "name"
else if (match[11]) token.type = "punctuator"
else if (match[12]) token.type = "whitespace"
return token

}