chore: implement gomark skeleton

This commit is contained in:
Steven
2023-12-12 23:24:02 +08:00
parent 7f1f6f77a0
commit aa3632e2ac
15 changed files with 393 additions and 172 deletions

View File

@ -0,0 +1,30 @@
package parser
import (
"github.com/usememos/memos/plugin/gomark/ast"
"github.com/usememos/memos/plugin/gomark/parser/tokenizer"
)
type TextParser struct {
Content string
}
var defaultTextParser = &TextParser{}
func NewTextParser() *TextParser {
return defaultTextParser
}
func (*TextParser) Match(tokens []*tokenizer.Token) (int, bool) {
if len(tokens) == 0 {
return 0, false
}
return 1, true
}
func (*TextParser) Parse(tokens []*tokenizer.Token) ast.Node {
if len(tokens) == 0 {
return ast.NewText("")
}
return ast.NewText(tokens[0].String())
}