aboutsummaryrefslogtreecommitdiff
path: root/mardown/ast_external.go
diff options
context:
space:
mode:
authorAnhgelus Morhtuuzh <william@herges.fr>2025-10-02 15:06:42 +0200
committerAnhgelus Morhtuuzh <william@herges.fr>2025-10-02 15:06:42 +0200
commit21dd71949b05d84ef6ee2f05610ec7254f1086f0 (patch)
tree72f94b52067774eed8264c5468b3b8a32b8553ef /mardown/ast_external.go
parentbe4cea404c15979112653cd4d75784aab527f22c (diff)
feat(markdown): custom error display
Diffstat (limited to 'mardown/ast_external.go')
-rw-r--r--mardown/ast_external.go12
1 files changed, 6 insertions, 6 deletions
diff --git a/mardown/ast_external.go b/mardown/ast_external.go
index 78f12c8..98a090e 100644
--- a/mardown/ast_external.go
+++ b/mardown/ast_external.go
@@ -10,7 +10,7 @@ type astLink struct {
href block
}
-func (a *astLink) Eval() (template.HTML, error) {
+func (a *astLink) Eval() (template.HTML, *ParseError) {
content, err := a.content.Eval()
if err != nil {
return "", err
@@ -28,7 +28,7 @@ type astImage struct {
source []*astParagraph
}
-func (a *astImage) Eval() (template.HTML, error) {
+func (a *astImage) Eval() (template.HTML, *ParseError) {
alt, err := a.alt.Eval()
if err != nil {
return "", err
@@ -52,14 +52,14 @@ func (a *astImage) Eval() (template.HTML, error) {
return template.HTML(fmt.Sprintf(`<figure><img alt="%s" src="%s"><figcaption>%s</figcaption></figure>`, alt, src, s)), nil
}
-func external(lxs *lexers) (block, error) {
+func external(lxs *lexers) (block, *ParseError) {
tp := lxs.Current().Value
if !lxs.Next() {
return astLiteral(tp), nil
}
lxs.Before() // because we call Next
var b block
- var err error
+ var err *ParseError
switch tp {
case "![":
b, err = image(lxs)
@@ -71,7 +71,7 @@ func external(lxs *lexers) (block, error) {
return b, err
}
-func link(lxs *lexers) (block, error) {
+func link(lxs *lexers) (block, *ParseError) {
lk := new(astLink)
start := lxs.current
content, href, _, ok := parseExternal(lxs, false)
@@ -83,7 +83,7 @@ func link(lxs *lexers) (block, error) {
return lk, nil
}
-func image(lxs *lexers) (block, error) {
+func image(lxs *lexers) (block, *ParseError) {
img := new(astImage)
start := lxs.current
alt, src, source, ok := parseExternal(lxs, true)