Skip to content

fix(ComponentID): change componentid class to struct - #1320

Open
BenPinet wants to merge 2 commits into
v18from
fix/change_ComponentID_to_struct
Open

fix(ComponentID): change componentid class to struct#1320
BenPinet wants to merge 2 commits into
v18from
fix/change_ComponentID_to_struct

Conversation

@BenPinet

Copy link
Copy Markdown
Member

No description provided.

@BenPinet
BenPinet requested a review from panquez August 13, 2026 15:28
@github-actions

Copy link
Copy Markdown
Contributor

Cpp-Linter Report ⚠️

Some files did not pass the configured checks!

clang-tidy (v20.1.8) reports: 370 concern(s)
  • bindings/python/src/model/mixin/core/component_type.cpp:30:10: warning: [misc-use-internal-linkage]

    function 'define_component_type' can be made static or moved into an anonymous namespace to enforce internal linkage

       30 |     void define_component_type( pybind11::module& module )
          |          ^
          |     static 
  • include/geode/model/mixin/core/component_type.hpp:53:19: warning: [hicpp-move-const-arg]

    std::move of the variable 'input_id' of the trivially-copyable type 'uuid' has no effect; remove std::move()

       53 |               id{ std::move( input_id ) } {};
          |                   ^~~~~~~~~~          ~
  • include/geode/model/mixin/core/component_type.hpp:80:18: warning: [readability-identifier-naming]

    invalid case style for global function 'AbslHashValue'

       80 |         friend H AbslHashValue( H h, const ComponentID& value )
          |                  ^~~~~~~~~~~~~
          |                  absl_hash_value
  • include/geode/model/mixin/core/component_type.hpp:80:35: warning: [readability-identifier-length]

    parameter name 'h' is too short, expected at least 3 characters

       80 |         friend H AbslHashValue( H h, const ComponentID& value )
          |                                   ^
  • include/geode/model/mixin/core/component_type.hpp:115:54: warning: [readability-identifier-length]

    parameter name 'id' is too short, expected at least 3 characters

      115 |         size_t operator()( const geode::ComponentID& id ) const;
          |                                                      ^
  • include/geode/model/representation/builder/detail/copy.hpp:48:1: warning: [modernize-concat-nested-namespaces]

    nested namespaces can be concatenated

       48 | namespace geode
          | ^~~~~~~~~~~~~~~
       49 | {
          | ~
       50 |     namespace detail
          |     ~~~~~~~~~~~~~~~~
          |     namespace geode::detail
  • include/geode/model/representation/builder/detail/copy.hpp:55:14: warning: [readability-function-cognitive-complexity]

    function 'copy_corner_components' has cognitive complexity of 12 (threshold 10)

       55 |         void copy_corner_components( const ModelFrom& from,
          |              ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:60:13: note: +1, including nesting penalty of 0, nesting level increased to 1
       60 |             for( const auto& corner : from.corners() )
          |             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:62:17: note: +2, including nesting penalty of 1, nesting level increased to 2
       62 |                 if( mapping.has_mapping_input( corner.id() ) )
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:66:25: note: +3, including nesting penalty of 2, nesting level increased to 3
       66 |                         ? builder_to.add_corner( id, corner.mesh().impl_name() )
          |                         ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:69:17: note: +1, nesting level increased to 2
       69 |                 else
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:73:29: note: +3, including nesting penalty of 2, nesting level increased to 3
       73 |                             ? builder_to.add_corner( corner.mesh().impl_name() )
          |                             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:78:17: note: +2, including nesting penalty of 1, nesting level increased to 2
       78 |                 if( const auto name = corner.name() )
          |                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:64:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

       64 |                     const auto& id = mapping.in2out( corner.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:71:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

       71 |                     const auto& id =
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:77:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

       77 |                 const auto& id = mapping.in2out( corner.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:89:14: warning: [readability-function-cognitive-complexity]

    function 'copy_line_components' has cognitive complexity of 12 (threshold 10)

       89 |         void copy_line_components( const ModelFrom& from,
          |              ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:94:13: note: +1, including nesting penalty of 0, nesting level increased to 1
       94 |             for( const auto& line : from.lines() )
          |             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:96:17: note: +2, including nesting penalty of 1, nesting level increased to 2
       96 |                 if( mapping.has_mapping_input( line.id() ) )
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:100:25: note: +3, including nesting penalty of 2, nesting level increased to 3
      100 |                         ? builder_to.add_line( id, line.mesh().impl_name() )
          |                         ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:103:17: note: +1, nesting level increased to 2
      103 |                 else
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:107:29: note: +3, including nesting penalty of 2, nesting level increased to 3
      107 |                             ? builder_to.add_line( line.mesh().impl_name() )
          |                             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:112:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      112 |                 if( const auto name = line.name() )
          |                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:98:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

       98 |                     const auto& id = mapping.in2out( line.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:105:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      105 |                     const auto& id =
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:111:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      111 |                 const auto& id = mapping.in2out( line.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:123:14: warning: [readability-function-cognitive-complexity]

    function 'copy_surface_components' has cognitive complexity of 12 (threshold 10)

      123 |         void copy_surface_components( const ModelFrom& from,
          |              ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:128:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      128 |             for( const auto& surface : from.surfaces() )
          |             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:130:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      130 |                 if( mapping.has_mapping_input( surface.id() ) )
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:134:25: note: +3, including nesting penalty of 2, nesting level increased to 3
      134 |                         ? builder_to.add_surface(
          |                         ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:138:17: note: +1, nesting level increased to 2
      138 |                 else
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:141:42: note: +3, including nesting penalty of 2, nesting level increased to 3
      141 |                                          ? builder_to.add_surface(
          |                                          ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:147:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      147 |                 if( const auto name = surface.name() )
          |                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:132:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      132 |                     const auto& id = mapping.in2out( surface.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:140:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      140 |                     const auto& id = ModelFrom::dim == ModelTo::dim
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:146:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      146 |                 const auto& id = mapping.in2out( surface.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:158:14: warning: [readability-function-cognitive-complexity]

    function 'copy_block_components' has cognitive complexity of 12 (threshold 10)

      158 |         void copy_block_components( const ModelFrom& from,
          |              ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:163:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      163 |             for( const auto& block : from.blocks() )
          |             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:165:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      165 |                 if( mapping.has_mapping_input( block.id() ) )
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:169:25: note: +3, including nesting penalty of 2, nesting level increased to 3
      169 |                         ? builder_to.add_block( id, block.mesh().impl_name() )
          |                         ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:172:17: note: +1, nesting level increased to 2
      172 |                 else
          |                 ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:176:29: note: +3, including nesting penalty of 2, nesting level increased to 3
      176 |                             ? builder_to.add_block( block.mesh().impl_name() )
          |                             ^
    /__w/OpenGeode/OpenGeode/include/geode/model/representation/builder/detail/copy.hpp:181:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      181 |                 if( const auto name = block.name() )
          |                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:167:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      167 |                     const auto& id = mapping.in2out( block.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:174:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      174 |                     const auto& id =
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:180:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      180 |                 const auto& id = mapping.in2out( block.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:201:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      201 |                     const auto& id = mapping.in2out( model_boundary.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:206:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      206 |                     const auto& id = builder_to.add_model_boundary();
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:209:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      209 |                 const auto& id = mapping.in2out( model_boundary.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:230:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      230 |                     const auto& id = mapping.in2out( corner_collection.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:235:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      235 |                     const auto& id = builder_to.add_corner_collection();
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:238:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      238 |                 const auto& id = mapping.in2out( corner_collection.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:260:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      260 |                     const auto& id = mapping.in2out( line_collection.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:265:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      265 |                     const auto& id = builder_to.add_line_collection();
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:268:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      268 |                 const auto& id = mapping.in2out( line_collection.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:290:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      290 |                     const auto& id = mapping.in2out( surface_collection.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:295:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      295 |                     const auto& id = builder_to.add_surface_collection();
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:298:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      298 |                 const auto& id = mapping.in2out( surface_collection.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:320:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      320 |                     const auto& id = mapping.in2out( block_collection.id() );
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:325:33: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      325 |                     const auto& id = builder_to.add_block_collection();
          |                                 ^
  • include/geode/model/representation/builder/detail/copy.hpp:328:29: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      328 |                 const auto& id = mapping.in2out( block_collection.id() );
          |                             ^
  • include/geode/model/representation/builder/detail/copy.hpp:342:35: warning: [cppcoreguidelines-missing-std-forward]

    forwarding reference parameter 'range' is never forwarded inside the function body

      342 |             clone_meshes( Range&& range, index_t nb_components )
          |                                   ^
  • include/geode/model/representation/builder/detail/copy.hpp:432:29: warning: [readability-identifier-length]

    parameter name 'v' is too short, expected at least 3 characters

      432 |                     index_t v ) {
          |                             ^
  • include/geode/model/representation/builder/detail/filter.hpp:60:13: warning: [modernize-use-nodiscard]

    function 'apply' should be marked [[nodiscard]]

       60 |             bool apply( const ComponentType& component_type ) const
          |             ^
          |             [[nodiscard]] 
  • include/geode/model/representation/core/internal/helpers.hpp:30:1: warning: [modernize-concat-nested-namespaces]

    nested namespaces can be concatenated

       30 | namespace geode
          | ^~~~~~~~~~~~~~~
       31 | {
          | ~
       32 |     namespace internal
          |     ~~~~~~~~~~~~~~~~~~
          |     namespace geode::internal
  • src/geode/model/helpers/component_mesh_edges.cpp:127:51: warning: [readability-function-cognitive-complexity]

    function 'line_component_mesh_edges' has cognitive complexity of 13 (threshold 10)

      127 |         geode::ModelComponentMeshEdges::LineEdges line_component_mesh_edges(
          |                                                   ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:131:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      131 |             if( edge_unique_vertices[0] == NO_ID
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:132:17: note: +1
      132 |                 || edge_unique_vertices[1] == NO_ID )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:139:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      139 |             if( line_pairs.empty() )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:145:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      145 |             for( const auto& line_pair : line_pairs )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:149:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      149 |                 for( const auto& pair : line_pair.second )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:151:21: note: +3, including nesting penalty of 2, nesting level increased to 3
      151 |                     for( const auto& edge_vertex :
          |                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:156:25: note: +4, including nesting penalty of 3, nesting level increased to 4
      156 |                         if( opposite_vertex == pair[1] )
          |                         ^
  • src/geode/model/helpers/component_mesh_edges.cpp:205:13: warning: [readability-function-cognitive-complexity]

    function 'surface_component_mesh_edges' has cognitive complexity of 12 (threshold 10)

      205 |             surface_component_mesh_edges( const Model& model,
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:208:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      208 |             if( edge_unique_vertices[0] == NO_ID
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:209:17: note: +1
      209 |                 || edge_unique_vertices[1] == NO_ID )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:216:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      216 |             if( surface_pairs.empty() )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:222:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      222 |             for( const auto& [surface_id, edge_pairs] : surface_pairs )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:226:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      226 |                 for( const auto& pair : edge_pairs )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:228:21: note: +3, including nesting penalty of 2, nesting level increased to 3
      228 |                     if( auto edge = mesh.polygon_edge_from_vertices(
          |                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_edges.cpp:235:21: note: +3, including nesting penalty of 2, nesting level increased to 3
      235 |                     if( auto edge = mesh.polygon_edge_from_vertices(
          |                     ^
  • src/geode/model/helpers/component_mesh_polygons.cpp:111:33: warning: [readability-function-cognitive-complexity]

    function 'block_mesh_polyhedra_around_quadrangle' has cognitive complexity of 15 (threshold 10)

      111 |     geode::PolyhedraAroundFacet block_mesh_polyhedra_around_quadrangle(
          |                                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:117:9: note: +1, including nesting penalty of 0, nesting level increased to 1
      117 |         for( const auto first_vertex_id : block_facet_from_unique_vertices[0] )
          |         ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:119:13: note: +2, including nesting penalty of 1, nesting level increased to 2
      119 |             for( const auto second_vertex_id :
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:122:17: note: +3, including nesting penalty of 2, nesting level increased to 3
      122 |                 for( const auto third_vertex_id :
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:125:21: note: +4, including nesting penalty of 3, nesting level increased to 4
      125 |                     for( const auto fourth_vertex_id :
          |                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:132:25: note: +5, including nesting penalty of 4, nesting level increased to 5
      132 |                         for( const auto& polyhedron :
          |                         ^
  • src/geode/model/helpers/component_mesh_polygons.cpp:242:9: warning: [llvm-else-after-return]

    do not use 'else' after 'return'

      242 |         else if( facets_block_vertices.size() >= 2 )
          |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      243 |         {
          |         ~
      244 |             auto& facets_unique_vertices_ref = facets_unique_vertices;
          |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      245 |             geode::OpenGeodeModelException::check_assertion(
          |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      246 |                 polygon_unique_vertices_cycle.is_opposite(
          |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      247 |                     geode::detail::OrientedVertexCycle<
          |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      248 |                         geode::PolygonVertices >{
          |                         ~~~~~~~~~~~~~~~~~~~~~~~~~
      249 |                         facets_unique_vertices_ref[1].vertices } ),
          |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      250 |                 "[block_vertices_from_surface_polygon] The block facets found "
          |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      251 |                 "from the polygon vertices have the same orientation." );
          |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      252 |         }
          |         ~
  • src/geode/model/helpers/component_mesh_polygons.cpp:260:13: warning: [bugprone-easily-swappable-parameters]

    2 adjacent parameters of 'polygon_and_facet_to_block_vertices' of similar type ('absl::Span') are easily swapped by mistake

      260 |             absl::Span< const geode::BlockPolyhedronFacet >
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      261 |                 facets_block_vertices,
          |                 ~~~~~~~~~~~~~~~~~~~~~~
      262 |             absl::Span< const geode::BlockPolyhedronFacet >
          |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      263 |                 facets_unique_vertices )
          |                 ~~~~~~~~~~~~~~~~~~~~~~
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:261:17: note: the first parameter in the range is 'facets_block_vertices'
      261 |                 facets_block_vertices,
          |                 ^~~~~~~~~~~~~~~~~~~~~
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:263:17: note: the last parameter in the range is 'facets_unique_vertices'
      263 |                 facets_unique_vertices )
          |                 ^~~~~~~~~~~~~~~~~~~~~~
  • src/geode/model/helpers/component_mesh_polygons.cpp:278:17: warning: [llvm-qualified-auto]

    'const auto it' can be declared as 'const auto *const it'

      278 |                 const auto it =
          |                 ^~~~~~~~~~
          |                 const auto *const 
  • src/geode/model/helpers/component_mesh_polygons.cpp:278:28: warning: [readability-identifier-length]

    variable name 'it' is too short, expected at least 3 characters

      278 |                 const auto it =
          |                            ^
  • src/geode/model/helpers/component_mesh_polygons.cpp:445:13: warning: [bugprone-easily-swappable-parameters]

    2 adjacent parameters of 'edge_info_to_surface_vertices' of similar type ('absl::Span') are easily swapped by mistake

      445 |             absl::Span< const geode::SurfacePolygonEdge >
          |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      446 |                 surface_edges_vertices,
          |                 ~~~~~~~~~~~~~~~~~~~~~~~
      447 |             absl::Span< const geode::SurfacePolygonEdge >
          |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      448 |                 surface_edges_unique_vertices )
          |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:446:17: note: the first parameter in the range is 'surface_edges_vertices'
      446 |                 surface_edges_vertices,
          |                 ^~~~~~~~~~~~~~~~~~~~~~
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:448:17: note: the last parameter in the range is 'surface_edges_unique_vertices'
      448 |                 surface_edges_unique_vertices )
          |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  • src/geode/model/helpers/component_mesh_polygons.cpp:464:17: warning: [llvm-qualified-auto]

    'const auto it' can be declared as 'const auto *const it'

      464 |                 const auto it = absl::c_find( surface_edge_uvertices,
          |                 ^~~~~~~~~~
          |                 const auto *const 
  • src/geode/model/helpers/component_mesh_polygons.cpp:464:28: warning: [readability-identifier-length]

    variable name 'it' is too short, expected at least 3 characters

      464 |                 const auto it = absl::c_find( surface_edge_uvertices,
          |                            ^
  • src/geode/model/helpers/component_mesh_polygons.cpp:632:13: warning: [readability-function-cognitive-complexity]

    function 'surface_component_mesh_polygons' has cognitive complexity of 11 (threshold 10)

      632 |             surface_component_mesh_polygons( const Model& model,
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:638:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      638 |             if( surface_pairs.empty() )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:644:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      644 |             for( auto& surface_pair : surface_pairs )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:648:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      648 |                 for( auto& pair : surface_pair.second )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:651:21: note: +3, including nesting penalty of 2, nesting level increased to 3
      651 |                     for( const auto& polygon_vertex :
          |                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:657:25: note: +4, including nesting penalty of 3, nesting level increased to 4
      657 |                         if( absl::c_equal( pair, vertices ) )
          |                         ^
  • src/geode/model/helpers/component_mesh_polygons.cpp:670:50: warning: [readability-function-cognitive-complexity]

    function 'block_component_mesh_polygons' has cognitive complexity of 11 (threshold 10)

      670 |         BRepComponentMeshPolygons::BlockPolygons block_component_mesh_polygons(
          |                                                  ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:675:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      675 |             if( block_pairs.empty() )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:681:13: note: +1, including nesting penalty of 0, nesting level increased to 1
      681 |             for( const auto& block_pair : block_pairs )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:685:17: note: +2, including nesting penalty of 1, nesting level increased to 2
      685 |                 for( const auto& pair : block_pair.second )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:687:21: note: +3, including nesting penalty of 2, nesting level increased to 3
      687 |                     if( auto facet =
          |                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_polygons.cpp:692:25: note: +4, including nesting penalty of 3, nesting level increased to 4
      692 |                         if( auto adj = mesh.polyhedron_adjacent_facet(
          |                         ^
  • src/geode/model/helpers/component_mesh_polygons.cpp:691:29: warning: [hicpp-move-const-arg]

    std::move of the expression of the trivially-copyable type 'geode::PolyhedronFacet' has no effect; remove std::move()

      691 |                             std::move( facet.value() ) );
          |                             ^~~~~~~~~~               ~
  • src/geode/model/helpers/component_mesh_polygons.cpp:696:33: warning: [hicpp-move-const-arg]

    std::move of the expression of the trivially-copyable type 'geode::PolyhedronFacet' has no effect; remove std::move()

      696 |                                 std::move( adj.value() ) );
          |                                 ^~~~~~~~~~             ~
  • src/geode/model/helpers/component_mesh_polygons.cpp:722:42: warning: [hicpp-move-const-arg]

    std::move of the expression of the trivially-copyable type 'geode::PolyhedronFacet' has no effect; remove std::move()

      722 |                     facets.emplace_back( std::move( facet.value() ) );
          |                                          ^~~~~~~~~~               ~
  • src/geode/model/helpers/component_mesh_polygons.cpp:726:46: warning: [hicpp-move-const-arg]

    std::move of the expression of the trivially-copyable type 'geode::PolyhedronFacet' has no effect; remove std::move()

      726 |                         facets.emplace_back( std::move( adj.value() ) );
          |                                              ^~~~~~~~~~             ~
  • src/geode/model/helpers/component_mesh_polyhedra.cpp:45:9: warning: [google-explicit-constructor]

    single-argument constructors must be marked explicit to avoid unintentional implicit conversions

       45 |         PolyhedronVerticesPossibilities(
          |         ^
          |         explicit 
  • src/geode/model/helpers/component_mesh_polyhedra.cpp:121:39: warning: [performance-unnecessary-value-param]

    the parameter 'current_list' is copied for each invocation but only used as a const reference; consider making it a const reference

      121 |             geode::PolyhedronVertices current_list )
          |                                       ^
          |             const                    &
  • src/geode/model/helpers/component_mesh_vertices.cpp:32:10: warning: [readability-function-size]

    function 'recursive_compare_unique_vertices' exceeds recommended size/complexity thresholds

       32 |     void recursive_compare_unique_vertices( geode::index_t index,
          |          ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/component_mesh_vertices.cpp:32:10: note: 6 parameters (threshold 4)
  • src/geode/model/helpers/compute_unique_vertices.cpp:140:10: warning: [readability-function-cognitive-complexity]

    function 'set_unique_vertices_base' has cognitive complexity of 18 (threshold 10)

      140 |     void set_unique_vertices_base( const Model& model,
          |          ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:145:9: note: +1, including nesting penalty of 0, nesting level increased to 1
      145 |         for( const auto& corner : model.corners() )
          |         ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:147:13: note: +2, including nesting penalty of 1, nesting level increased to 2
      147 |             for( const auto v : geode::Range{ corner.mesh().nb_vertices() } )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:150:17: note: +3, including nesting penalty of 2, nesting level increased to 3
      150 |                 if( model.unique_vertex( { corner.component_id(), v } )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:162:9: note: +1, including nesting penalty of 0, nesting level increased to 1
      162 |         for( const auto& line : model.lines() )
          |         ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:164:13: note: +2, including nesting penalty of 1, nesting level increased to 2
      164 |             for( const auto v : geode::Range{ line.mesh().nb_vertices() } )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:167:17: note: +3, including nesting penalty of 2, nesting level increased to 3
      167 |                 if( model.unique_vertex( cmv ) != geode::NO_ID )
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:178:9: note: +1, including nesting penalty of 0, nesting level increased to 1
      178 |         for( const auto& surface : model.surfaces() )
          |         ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:180:13: note: +2, including nesting penalty of 1, nesting level increased to 2
      180 |             for( const auto v : geode::Range{ surface.mesh().nb_vertices() } )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/compute_unique_vertices.cpp:183:17: note: +3, including nesting penalty of 2, nesting level increased to 3
      183 |                 if( model.unique_vertex( cmv ) != geode::NO_ID )
          |                 ^
  • src/geode/model/helpers/compute_unique_vertices.cpp:236:25: warning: [readability-identifier-length]

    variable name 'uv' is too short, expected at least 3 characters

      236 |         for( const auto uv : geode::Range{ model.nb_unique_vertices() } )
          |                         ^
  • src/geode/model/helpers/compute_unique_vertices.cpp:244:20: warning: [readability-identifier-length]

    variable name 'uv' is too short, expected at least 3 characters

      244 |         for( auto& uv : initial_uv_correspondance )
          |                    ^
  • src/geode/model/helpers/convert_brep_section.cpp:55:24: warning: [readability-identifier-length]

    parameter name 'to' is too short, expected at least 3 characters

       55 |         const ModelTo& to,
          |                        ^
  • src/geode/model/helpers/convert_brep_section.cpp:84:9: warning: [google-explicit-constructor]

    single-argument constructors must be marked explicit to avoid unintentional implicit conversions

       84 |         SectionExtruder( const geode::Section& section )
          |         ^
          |         explicit 
  • src/geode/model/helpers/convert_brep_section.cpp:202:32: warning: [performance-unnecessary-copy-initialization]

    the const qualified variable 'name' is copy-constructed from a const reference; consider making it a const reference

      202 |                 if( const auto name = model_boundary.name() )
          |                                ^
          |                               &
  • src/geode/model/helpers/convert_brep_section.cpp:245:17: warning: [cppcoreguidelines-pro-type-member-init]

    uninitialized record type: 'pointids'

      245 |                 std::array< geode::index_t, 4 > pointids;
          |                 ^                                       
          |                                                         {}
  • src/geode/model/helpers/convert_brep_section.cpp:347:17: warning: [cppcoreguidelines-pro-type-member-init]

    uninitialized record type: 'pointids'

      347 |                 std::array< geode::index_t, 6 > pointids;
          |                 ^                                       
          |                                                         {}
  • src/geode/model/helpers/convert_brep_section.cpp:347:45: warning: [cppcoreguidelines-avoid-magic-numbers]

    6 is a magic number; consider replacing it with a named constant

      347 |                 std::array< geode::index_t, 6 > pointids;
          |                                             ^
  • src/geode/model/helpers/convert_brep_section.cpp:348:33: warning: [readability-identifier-length]

    variable name 'p0' is too short, expected at least 3 characters

      348 |                 for( const auto p0 : geode::LRange{ 3 } )
          |                                 ^
  • src/geode/model/helpers/detail/build_model_boundaries.cpp:75:1: warning: [modernize-concat-nested-namespaces]

    nested namespaces can be concatenated

       75 | namespace geode
          | ^~~~~~~~~~~~~~~
       76 | {
          | ~
       77 |     namespace detail
          |     ~~~~~~~~~~~~~~~~
          |     namespace geode::detail
  • src/geode/model/helpers/surface_radial_sort.cpp:61:21: warning: [hicpp-move-const-arg]

    std::move of the variable 'edge_in' of the trivially-copyable type 'geode::PolygonEdge' has no effect; remove std::move()

       61 |               edge( std::move( edge_in ) ),
          |                     ^~~~~~~~~~         ~
  • src/geode/model/helpers/surface_radial_sort.cpp:62:53: warning: [bugprone-use-after-move]

    'edge_in' used after it was moved

       62 |               opposite_point{ opposite( surface_in, edge_in ) }
          |                                                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:61:15: note: move occurred here
       61 |               edge( std::move( edge_in ) ),
          |               ^
  • src/geode/model/helpers/surface_radial_sort.cpp:92:53: warning: [readability-function-cognitive-complexity]

    function 'border_polygons' has cognitive complexity of 11 (threshold 10)

       92 |     std::pair< bool, std::vector< BorderPolygon > > border_polygons(
          |                                                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:104:9: note: +1, including nesting penalty of 0, nesting level increased to 1
      104 |         for( const auto& vertex_pairs :
          |         ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:111:13: note: +2, including nesting penalty of 1, nesting level increased to 2
      111 |             for( const auto& pair : vertex_pairs.second )
          |             ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:113:17: note: +3, including nesting penalty of 2, nesting level increased to 3
      113 |                 if( auto edge0 = surface_mesh.polygon_edge_from_vertices(
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:119:42: note: +1
      119 |                                          || surface_mesh.is_polygon_degenerated(
          |                                          ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:122:17: note: +3, including nesting penalty of 2, nesting level increased to 3
      122 |                 if( auto edge1 = surface_mesh.polygon_edge_from_vertices(
          |                 ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:128:42: note: +1
      128 |                                          || surface_mesh.is_polygon_degenerated(
          |                                          ^
  • src/geode/model/helpers/surface_radial_sort.cpp:95:24: warning: [readability-identifier-length]

    parameter name 'e0' is too short, expected at least 3 characters

       95 |         geode::index_t e0,
          |                        ^
  • src/geode/model/helpers/surface_radial_sort.cpp:96:24: warning: [readability-identifier-length]

    parameter name 'e1' is too short, expected at least 3 characters

       96 |         geode::index_t e1 )
          |                        ^
  • src/geode/model/helpers/surface_radial_sort.cpp:117:40: warning: [hicpp-move-const-arg]

    std::move of the expression of the trivially-copyable type 'geode::PolygonEdge' has no effect; remove std::move()

      117 |                         surface, true, std::move( edge0.value() ) );
          |                                        ^~~~~~~~~~               ~
  • src/geode/model/helpers/surface_radial_sort.cpp:126:41: warning: [hicpp-move-const-arg]

    std::move of the expression of the trivially-copyable type 'geode::PolygonEdge' has no effect; remove std::move()

      126 |                         surface, false, std::move( edge1.value() ) );
          |                                         ^~~~~~~~~~               ~
  • src/geode/model/helpers/surface_radial_sort.cpp:151:17: warning: [readability-implicit-bool-conversion]

    implicit conversion 'bool' -> 'local_index_t' (aka 'unsigned char')

      151 |                 !polygon.same_orientation, polygon.edge };
          |                 ^                        
          |                 static_cast<local_index_t>( )
  • src/geode/model/helpers/surface_radial_sort.cpp:153:17: warning: [readability-implicit-bool-conversion]

    implicit conversion 'bool' -> 'local_index_t' (aka 'unsigned char')

      153 |                 polygon.same_orientation, polygon.edge };
          |                 ^                       
          |                 static_cast<local_index_t>( )
  • src/geode/model/helpers/surface_radial_sort.cpp:162:21: warning: [bugprone-implicit-widening-of-multiplication-result]

    performing an implicit widening conversion to type 'size_type' (aka 'unsigned long') of a multiplication performed in type 'index_t' (aka 'unsigned int')

      162 |         : surfaces( 2 * nb_surfaces )
          |                     ^
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:162:21: note: make conversion explicit to silence this warning
       24 |         : surfaces( 2 * nb_surfaces )
          |                     ^~~~~~~~~~~~~~~
          |                     static_cast<size_type>( )
    /__w/OpenGeode/OpenGeode/src/geode/model/helpers/surface_radial_sort.cpp:162:21: note: perform multiplication in a wider type
      162 |         : surfaces( 2 * nb_surfaces )
          |                     ^
          |                     static_cast<size_type>( )
  • src/geode/model/helpers/surface_radial_sort.cpp:190:17: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      190 |         index_t id{ 0 };
          |                 ^
  • src/geode/model/helpers/surface_radial_sort.cpp:191:26: warning: [readability-identifier-length]

    variable name 's' is too short, expected at least 3 characters

      191 |         for( const auto& s : surfaces )
          |                          ^
  • src/geode/model/helpers/surface_radial_sort.cpp:207:24: warning: [readability-identifier-length]

    variable name 'e0' is too short, expected at least 3 characters

      207 |             const auto e0 = mesh.edge_vertex( { edge_id, 0 } );
          |                        ^
  • src/geode/model/helpers/surface_radial_sort.cpp:208:24: warning: [readability-identifier-length]

    variable name 'e1' is too short, expected at least 3 characters

      208 |             const auto e1 = mesh.edge_vertex( { edge_id, 1 } );
          |                        ^
  • src/geode/model/helpers/surface_radial_sort.cpp:226:25: warning: [readability-identifier-length]

    variable name 'p0' is too short, expected at least 3 characters

      226 |             const auto& p0 = line.mesh().point( e0 );
          |                         ^
  • src/geode/model/helpers/surface_radial_sort.cpp:227:25: warning: [readability-identifier-length]

    variable name 'p1' is too short, expected at least 3 characters

      227 |             const auto& p1 = line.mesh().point( e1 );
          |                         ^
  • src/geode/model/mixin/core/detail/relationships_impl.cpp:40:1: warning: [modernize-concat-nested-namespaces]

    nested namespaces can be concatenated

       40 | namespace geode
          | ^~~~~~~~~~~~~~~
       41 | {
          | ~
       42 |     namespace detail
          |     ~~~~~~~~~~~~~~~~
          |     namespace geode::detail
  • src/geode/model/mixin/core/detail/relationships_impl.cpp:49:55: warning: [hicpp-named-parameter]

    all parameters should be named in a function

       49 |         RelationshipsImpl::RelationshipsImpl( BITSERY ) {}
          |                                                       ^
          |                                                        /*unused*/
  • src/geode/model/mixin/core/detail/relationships_impl.cpp:122:57: warning: [readability-identifier-length]

    parameter name 'to' is too short, expected at least 3 characters

      122 |             const ComponentID& from, const ComponentID& to )
          |                                                         ^
  • src/geode/model/mixin/core/detail/relationships_impl.cpp:253:24: warning: [readability-identifier-length]

    variable name 'id' is too short, expected at least 3 characters

      253 |             const auto id =
          |                        ^
  • src/geode/model/mixin/core/relationships.cpp:61:18: warning: [readability-redundant-member-init]

    initializer for base class 'detail::RelationshipsImpl' is redundant

       61 |         Impl() : RelationshipsImpl()
          |                  ^~~~~~~~~~~~~~~~~~~
  • src/geode/model/mixin/core/relationships.cpp:66:9: warning: [google-explicit-constructor]

    single-argument constructors must be marked explicit to avoid unintentional implicit conversions

       66 |         Impl( BITSERY bitsery ) : RelationshipsImpl( bitsery ) {}
          |         ^
          |         explicit 
  • src/geode/model/mixin/core/relationships.cpp:68:9: warning: [modernize-use-nodiscard]

    function 'relation_type' should be marked [[nodiscard]]

       68 |         RelationType relation_type( const index_t edge_id ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:73:9: warning: [modernize-use-nodiscard]

    function 'is_boundary_relation' should be marked [[nodiscard]]

       73 |         bool is_boundary_relation( const index_t edge_id ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:78:9: warning: [modernize-use-nodiscard]

    function 'is_internal_relation' should be marked [[nodiscard]]

       78 |         bool is_internal_relation( const index_t edge_id ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:83:9: warning: [modernize-use-nodiscard]

    function 'is_item_relation' should be marked [[nodiscard]]

       83 |         bool is_item_relation( const index_t edge_id ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:88:9: warning: [modernize-use-nodiscard]

    function 'check_relation_exists' should be marked [[nodiscard]]

       88 |         std::optional< index_t > check_relation_exists(
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:89:43: warning: [readability-identifier-length]

    parameter name 'to' is too short, expected at least 3 characters

       89 |             const uuid& from, const uuid& to, const RelationType type ) const
          |                                           ^
  • src/geode/model/mixin/core/relationships.cpp:101:9: warning: [modernize-use-nodiscard]

    function 'is_boundary' should be marked [[nodiscard]]

      101 |         bool is_boundary( const uuid& from, const uuid& to ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:101:57: warning: [readability-identifier-length]

    parameter name 'to' is too short, expected at least 3 characters

      101 |         bool is_boundary( const uuid& from, const uuid& to ) const
          |                                                         ^
  • src/geode/model/mixin/core/relationships.cpp:115:9: warning: [modernize-use-nodiscard]

    function 'is_internal' should be marked [[nodiscard]]

      115 |         bool is_internal( const uuid& from, const uuid& to ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:115:57: warning: [readability-identifier-length]

    parameter name 'to' is too short, expected at least 3 characters

      115 |         bool is_internal( const uuid& from, const uuid& to ) const
          |                                                         ^
  • src/geode/model/mixin/core/relationships.cpp:129:9: warning: [modernize-use-nodiscard]

    function 'is_item' should be marked [[nodiscard]]

      129 |         bool is_item( const uuid& from, const uuid& to ) const
          |         ^
          |         [[nodiscard]] 
  • src/geode/model/mixin/core/relationships.cpp:129:53: warning: [readability-identifier-length]

    parameter name 'to' is too short, expected at least 3 characters

      129 |         bool is_item( const uuid& from, const uuid& to ) const
          |                                                     ^

Have any feedback or feature suggestions? Share it here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants