summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go
diff options
context:
space:
mode:
authorWim <wim@42.be>2020-08-10 00:29:54 +0200
committerGitHub <noreply@github.com>2020-08-10 00:29:54 +0200
commit4e50fd864921c556988c919269448efdb90fa961 (patch)
treea3625f03f8de3c4f3841364000a4ea3aa42c1533 /vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go
parentdfdffa0027334e55ce213fc6eb62206dbf48baf6 (diff)
downloadmatterbridge-msglm-4e50fd864921c556988c919269448efdb90fa961.tar.gz
matterbridge-msglm-4e50fd864921c556988c919269448efdb90fa961.tar.bz2
matterbridge-msglm-4e50fd864921c556988c919269448efdb90fa961.zip
Use mattermost v5 module (#1192)
Diffstat (limited to 'vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go')
-rw-r--r--vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go78
1 files changed, 0 insertions, 78 deletions
diff --git a/vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go b/vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go
deleted file mode 100644
index 80b5bc24..00000000
--- a/vendor/github.com/mattermost/mattermost-server/utils/markdown/inspect.go
+++ /dev/null
@@ -1,78 +0,0 @@
-// Copyright (c) 2017-present Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-package markdown
-
-// Inspect traverses the markdown tree in depth-first order. If f returns true, Inspect invokes f
-// recursively for each child of the block or inline, followed by a call of f(nil).
-func Inspect(markdown string, f func(interface{}) bool) {
- document, referenceDefinitions := Parse(markdown)
- InspectBlock(document, func(block Block) bool {
- if !f(block) {
- return false
- }
- switch v := block.(type) {
- case *Paragraph:
- for _, inline := range MergeInlineText(v.ParseInlines(referenceDefinitions)) {
- InspectInline(inline, func(inline Inline) bool {
- return f(inline)
- })
- }
- }
- return true
- })
-}
-
-// InspectBlock traverses the blocks in depth-first order, starting with block. If f returns true,
-// InspectBlock invokes f recursively for each child of the block, followed by a call of f(nil).
-func InspectBlock(block Block, f func(Block) bool) {
- if !f(block) {
- return
- }
- switch v := block.(type) {
- case *Document:
- for _, child := range v.Children {
- InspectBlock(child, f)
- }
- case *List:
- for _, child := range v.Children {
- InspectBlock(child, f)
- }
- case *ListItem:
- for _, child := range v.Children {
- InspectBlock(child, f)
- }
- case *BlockQuote:
- for _, child := range v.Children {
- InspectBlock(child, f)
- }
- }
- f(nil)
-}
-
-// InspectInline traverses the blocks in depth-first order, starting with block. If f returns true,
-// InspectInline invokes f recursively for each child of the block, followed by a call of f(nil).
-func InspectInline(inline Inline, f func(Inline) bool) {
- if !f(inline) {
- return
- }
- switch v := inline.(type) {
- case *InlineImage:
- for _, child := range v.Children {
- InspectInline(child, f)
- }
- case *InlineLink:
- for _, child := range v.Children {
- InspectInline(child, f)
- }
- case *ReferenceImage:
- for _, child := range v.Children {
- InspectInline(child, f)
- }
- case *ReferenceLink:
- for _, child := range v.Children {
- InspectInline(child, f)
- }
- }
- f(nil)
-}