Rename BrokenLinkCallback trait to ParserCallbacks - #1049
Merged
Conversation
notriddle
approved these changes
Aug 27, 2025
notriddle
reviewed
Aug 27, 2025
Remove blanket impl of ParserCallbacks for closures. Replaced with a wrapper type BrokenLinkCallback to support the old API.
ollpu
added a commit
to ollpu/pulldown-cmark
that referenced
this pull request
Sep 10, 2025
No measurable performance impact in a quick benchmark: pulldown-cmark#1049 (comment)
ollpu
force-pushed
the
rename-parser-callbacks
branch
from
September 10, 2025 16:16
b06e968 to
b880cb7
Compare
No measurable performance impact in a quick benchmark: pulldown-cmark#1049 (comment)
ollpu
force-pushed
the
rename-parser-callbacks
branch
from
September 10, 2025 16:20
b880cb7 to
9c7b81a
Compare
Collaborator
Author
|
I'll go ahead and merge this with @notriddle's (slightly stale) review unless there are any objections |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Edit: #1043 maybe doesn't need a new callback, so this PR doesn't need to be merged separately from #1013.
We want to use the same trait for other callbacks as well, e.g. as in #1013
#1043.Since there will be more callbacks to override, it makes sense to remove the existing blanket implementation for closures. To keep backwards compatibility with most old use cases,
new_with_broken_link_callbackuses a new wrapper type.I tried to move the
'inputlifetime from the trait to the callbacks themselves, but I still ran into rust-lang/rust#41078 when trying to pass closures tonew_with_broken_link_callback. I guess it's fine as is.Breaking change,
so I created a new release branch.