Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Commit

Permalink
I forgor to bump ver 💀
Browse files Browse the repository at this point in the history
  • Loading branch information
Oliver-makes-code committed Feb 14, 2023
1 parent 819024c commit b211fa5
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 10 deletions.
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ plugins {
}

group = "dev.proxyfox"
version = "1.2"
version = "1.3"

repositories {
mavenCentral()
Expand Down
4 changes: 2 additions & 2 deletions src/main/kotlin/dev/proxyfox/markt/Node.kt
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ public class SymbolNode(public val left: String, public val right: String = left
override val trueLength: Int
get() = nodes.sumOf(MarkdownNode::trueLength) + left.length + right.length

public constructor(left: String, right: String, content: String) : this(left, right, MarkdownParser.parse(content).nodes)
public constructor(left: String, right: String, content: String, parser: MarkdownParser) : this(left, right, parser.parse(content).nodes)

override fun toString(): String {
var out = ""
Expand Down Expand Up @@ -100,7 +100,7 @@ public class HyperlinkNode(public val url: String, public val nodes: MutableList
override val trueLength: Int
get() = nodes.sumOf(MarkdownNode::trueLength) + 4 + url.length

public constructor(url: String, content: String) : this(url, MarkdownParser.parse(content).nodes)
public constructor(url: String, content: String, parser: MarkdownParser) : this(url, parser.parse(content).nodes)

override fun toString(): String {
var out = ""
Expand Down
14 changes: 7 additions & 7 deletions src/main/kotlin/dev/proxyfox/markt/Rule.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@ package dev.proxyfox.markt
public interface MarkdownRule {
public val triggerLength: Int
public val sortPriority: Int get() = -triggerLength
public fun parse(content: String) : MarkdownNode?
public fun parse(content: String, parser: MarkdownParser) : MarkdownNode?
}

public interface RegexRule : MarkdownRule {
public val regex: Regex
public fun parse(match: MatchResult) : MarkdownNode
override fun parse(content: String): MarkdownNode? {
public fun parse(match: MatchResult, parser: MarkdownParser) : MarkdownNode
override fun parse(content: String, parser: MarkdownParser): MarkdownNode? {
val match = regex.find(content) ?: return null
return parse(match)
return parse(match, parser)
}
}

Expand All @@ -22,17 +22,17 @@ public class BracketRule(private val left: String, private val right: String) :

override val regex: Regex = Regex("^${left.normalize()}(.+?[^\\\\])${right.normalize()}")
override val triggerLength: Int = left.length
override fun parse(match: MatchResult): MarkdownNode = SymbolNode(left, right, match.groupValues[1])
public override fun parse(match: MatchResult, parser: MarkdownParser): MarkdownNode = SymbolNode(left, right, match.groupValues[1], parser)
}

public object HyperlinkRule : RegexRule {
override val regex: Regex = Regex("^\\[(.+?[^\\\\])]\\((.+?)\\)")
override val triggerLength: Int = 1
override fun parse(match: MatchResult): MarkdownNode = HyperlinkNode(match.groupValues[2], match.groupValues[1])
override fun parse(match: MatchResult, parser: MarkdownParser): MarkdownNode = HyperlinkNode(match.groupValues[2], match.groupValues[1], parser)
}

public object MentionRule : RegexRule {
override val regex: Regex = Regex("^<(@[!&]?|#|a?:[0-9a-zA-Z_\\-]{2,}?:)([0-9]+?)>")
override val triggerLength: Int = 1
override fun parse(match: MatchResult): MarkdownNode = MentionNode(match.groupValues[1], match.groupValues[2])
override fun parse(match: MatchResult, parser: MarkdownParser): MarkdownNode = MentionNode(match.groupValues[1], match.groupValues[2])
}

0 comments on commit b211fa5

Please sign in to comment.