var attention = require('./tokenize/attention') var headingAtx = require('./tokenize/heading-atx') var autolink = require('./tokenize/autolink') var list = require('./tokenize/list') var blockQuote = require('./tokenize/block-quote') var characterEscape = require('./tokenize/character-escape') var characterReference = require('./tokenize/character-reference') var codeFenced = require('./tokenize/code-fenced') var codeIndented = require('./tokenize/code-indented') var codeText = require('./tokenize/code-text') var definition = require('./tokenize/definition') var hardBreakEscape = require('./tokenize/hard-break-escape') var htmlFlow = require('./tokenize/html-flow') var htmlText = require('./tokenize/html-text') var labelEnd = require('./tokenize/label-end') var labelImage = require('./tokenize/label-start-image') var labelLink = require('./tokenize/label-start-link') var setextUnderline = require('./tokenize/setext-underline') var thematicBreak = require('./tokenize/thematic-break') var lineEnding = require('./tokenize/line-ending') var resolveText = require('./initialize/text').resolver exports.document = { 42: list, // Asterisk 43: list, // Plus sign 45: list, // Dash 48: list, // 0 49: list, // 1 50: list, // 2 51: list, // 3 52: list, // 4 53: list, // 5 54: list, // 6 55: list, // 7 56: list, // 8 57: list, // 9 62: blockQuote // Greater than } exports.contentInitial = { 91: definition // Left square bracket } exports.flowInitial = { '-2': codeIndented, // Horizontal tab '-1': codeIndented, // Virtual space 32: codeIndented // Space } exports.flow = { 35: headingAtx, // Number sign 42: thematicBreak, // Asterisk 45: [setextUnderline, thematicBreak], // Dash 60: htmlFlow, // Less than 61: setextUnderline, // Equals to 95: thematicBreak, // Underscore 96: codeFenced, // Grave accent 126: codeFenced // Tilde } exports.string = { 38: characterReference, // Ampersand 92: characterEscape // Backslash } exports.text = { '-5': lineEnding, // Carriage return '-4': lineEnding, // Line feed '-3': lineEnding, // Carriage return + line feed 33: labelImage, // Exclamation mark 38: characterReference, // Ampersand 42: attention, // Asterisk 60: [autolink, htmlText], // Less than 91: labelLink, // Left square bracket 92: [hardBreakEscape, characterEscape], // Backslash 93: labelEnd, // Right square bracket 95: attention, // Underscore 96: codeText // Grave accent } exports.insideSpan = { null: [attention, resolveText] }