Tests to validate that regions implement a common interface#62
Open
Tests to validate that regions implement a common interface#62
Conversation
We don't require region implementations to provide other trait implementations, but in many cases it is useful to have push/reserve implementations. This tests checks that regions provided by this crate provide said implementations. Specifically, it checks that regions can absorb their owned type, references to their owned type, the read item, and allow to reserve space for references to the owned type and the read item. Additionally, regions for where owned types are Deref, the region should absorb references to the deref target, and be able to reserve it. This surfaced some missing APIs which we add in this change. Namely, the columns region missed reserve APIs. Adding the reserve implementations required the column's item getter to return an option (elements are not required to have the same length.) The codec region still doesn't provide all implementations required, but it's closer and provides sufficient push implementations. It only misses the reserve items API, which does not make too much sense in its context. Signed-off-by: Moritz Hoffmann <antiguru@gmail.com>
CodSpeed Performance ReportMerging #62 will not alter performanceComparing Summary
|
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.
We don't require region implementations to provide other trait
implementations, but in many cases it is useful to have push/reserve
implementations. This tests checks that regions provided by this crate
provide said implementations. Specifically, it checks that regions can
absorb their owned type, references to their owned type, the read item,
and allow to reserve space for references to the owned type and the read
item. Additionally, regions for where owned types are Deref, the region
should absorb references to the deref target, and be able to reserve it.
This surfaced some missing APIs which we add in this change. Namely, the
columns region missed reserve APIs. Adding the reserve implementations
required the column's item getter to return an option (elements are not
required to have the same length.) The codec region still doesn't provide
all implementations required, but it's closer and provides sufficient
push implementations. It only misses the reserve items API, which does not
make too much sense in its context.
Signed-off-by: Moritz Hoffmann antiguru@gmail.com