More slam modernization, including traits classes and aliases#1904
Open
kennyweiss wants to merge 16 commits into
Open
More slam modernization, including traits classes and aliases#1904kennyweiss wants to merge 16 commits into
kennyweiss wants to merge 16 commits into
Conversation
kennyweiss
requested review from
Arlie-Capps,
BradWhitlock,
bmhan12,
jcs15c,
publixsubfan,
rhornung67 and
white238
July 7, 2026 04:16
kennyweiss
commented
Jul 7, 2026
Member
Author
There was a problem hiding this comment.
The changes to bump are unrelated to this branch and were required to fix the MSVC compilation.
kennyweiss
commented
Jul 7, 2026
Member
Author
There was a problem hiding this comment.
Note: The changes to MIR in this branch are to the unused "reference" subdirectory, which we're keeping until we can incorporate some missing features.
kennyweiss
force-pushed
the
feature/kweiss/slam-modernization
branch
from
July 7, 2026 07:16
93c7eed to
b23ae05
Compare
BradWhitlock
approved these changes
Jul 7, 2026
BradWhitlock
left a comment
Member
There was a problem hiding this comment.
Thanks @kennyweiss. It looks like types are easier to write out now. Nice doc improvements too.
…lations and maps These will be converted into concepts when we Axom transitions to C++20.
And adds checks that the iterators are random_access_iterators.
…indirection types
And uses them in slam examples and usages throughout Axom.
…r-based indirection Also, increase usage of the new slam alias types.
Most uses of slam::Map within Axom use the default configurations and the more complex usages were not sufficiently similar to warrant shared aliases.
Several functions were templated, but the implementations were left in the cpp file. This moves them to the hpp file.
kennyweiss
force-pushed
the
feature/kweiss/slam-modernization
branch
from
July 10, 2026 18:29
b23ae05 to
687fdb6
Compare
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.
Summary
is_set_like,is_relation_likeandis_map_like-- which will map to conceptsStaticRelationandVariableRelationtrivially copyable by inheriting fromConcreteInterfaceinstead ofVirtualInterfaceaxom::Arrayandaxom::ArrayViewthe default backing buffer type for slam's sets, relations and maps. The default was previouslystd::vector, so this might require some minor changes from users. Thestd::vectorbacking is still available through an explicitSTLVectorIndirectionpolicyUserDocs.cpp)