summaryrefslogtreecommitdiffstats
path: root/vendor/gitlab.com/golang-commonmark/markdown/text.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/gitlab.com/golang-commonmark/markdown/text.go')
-rw-r--r--vendor/gitlab.com/golang-commonmark/markdown/text.go52
1 files changed, 52 insertions, 0 deletions
diff --git a/vendor/gitlab.com/golang-commonmark/markdown/text.go b/vendor/gitlab.com/golang-commonmark/markdown/text.go
new file mode 100644
index 00000000..ae98e743
--- /dev/null
+++ b/vendor/gitlab.com/golang-commonmark/markdown/text.go
@@ -0,0 +1,52 @@
+// Copyright 2015 The Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+package markdown
+
+var terminatorCharTable = [256]bool{
+ '\n': true,
+ '!': true,
+ '#': true,
+ '$': true,
+ '%': true,
+ '&': true,
+ '*': true,
+ '+': true,
+ '-': true,
+ ':': true,
+ '<': true,
+ '=': true,
+ '>': true,
+ '@': true,
+ '[': true,
+ '\\': true,
+ ']': true,
+ '^': true,
+ '_': true,
+ '`': true,
+ '{': true,
+ '}': true,
+ '~': true,
+}
+
+func ruleText(s *StateInline, silent bool) bool {
+ pos := s.Pos
+ max := s.PosMax
+ src := s.Src
+
+ for pos < max && !terminatorCharTable[src[pos]] {
+ pos++
+ }
+ if pos == s.Pos {
+ return false
+ }
+
+ if !silent {
+ s.Pending.WriteString(src[s.Pos:pos])
+ }
+
+ s.Pos = pos
+
+ return true
+}