Remove uses of type-of to enable class extensions.#13
Open
rpgoldman wants to merge 2 commits intoeschulte:masterfrom
Open
Remove uses of type-of to enable class extensions.#13rpgoldman wants to merge 2 commits intoeschulte:masterfrom
rpgoldman wants to merge 2 commits intoeschulte:masterfrom
Conversation
The use of `type-of` to choose how to process graphs will make extension impossible, because newly-introduced subtypes of `graph` and `digraph` wouldn't satisfy the right guards. Replaced such uses of `type-of` with a combination of newly-introduced generic functions and `typep`.
Bumped the version from 0.0.0 to 0.1.0 so that `:version` can be used to detect the extensible version of the graph library. Also added my name to the list of authors.
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.
The use of
type-ofto choose how to process graphs will make extension impossible, because newly-introduced subtypes ofgraphanddigraphwouldn't satisfy the right guards.Replaced such uses of
type-ofwith a combination of newly-introduced generic functions andtypep.I was considering extending the existing classes using a mixin that would handle attaching attributes to nodes and edges, but realized that would break methods that used
type-ofto distinguish between digraphs and graphs. This PR would clear the way to making that change.