Helper template function for computing set unions. Ensures that elements of a take precedence. For example, if
a = {{1, 2}, {3, 4}} b = {{1, 4}, {5, 6}}
combine(a, b) will use the pair {1, 2} from a, not {1, 4} from b.
This behavior relies on the fact that std::map::insert({a, b}) is a no-op if a key equivalent to a is already present.
This is similar to a set union, but it is not symmetric. (I would expect set_union(a, b) to be the same as set_union(b, a)).
Definition at line 108 of file pism_utilities.hh.
Referenced by pism::IceModel::allocate_scalar_diagnostics(), pism::IceModel::allocate_spatial_diagnostics(), pism::IceRegionalModel::allocate_storage(), pism::IceModel::deallocate_unused_diagnostics(), pism::IceModel::init_checkpoints(), pism::IceModel::init_final_output(), pism::IceModel::init_outputs(), pism::IceModel::init_snapshots(), pism::IceModel::init_spatial_diagnostics(), main(), pism::IceModel::save_state_on_error(), pism::surface::SurfaceModel::scalar_diagnostics_impl(), pism::stressbalance::StressBalance::scalar_diagnostics_impl(), pism::MohrCoulombYieldStress::spatial_diagnostics_impl(), pism::OptTillphiYieldStress::spatial_diagnostics_impl(), pism::atmosphere::AtmosphereModel::spatial_diagnostics_impl(), pism::frontalmelt::FrontalMelt::spatial_diagnostics_impl(), pism::ocean::Pico::spatial_diagnostics_impl(), pism::ocean::OceanModel::spatial_diagnostics_impl(), pism::ocean::sea_level::SeaLevel::spatial_diagnostics_impl(), pism::surface::DEBMSimple::spatial_diagnostics_impl(), pism::surface::NoGLRetreat::spatial_diagnostics_impl(), pism::surface::TemperatureIndex::spatial_diagnostics_impl(), pism::surface::SurfaceModel::spatial_diagnostics_impl(), pism::bed::LingleClark::spatial_diagnostics_impl(), pism::hydrology::Routing::spatial_diagnostics_impl(), pism::hydrology::SteadyState::spatial_diagnostics_impl(), pism::RegionalYieldStress::spatial_diagnostics_impl(), pism::stressbalance::StressBalance::spatial_diagnostics_impl(), pism::ocean::InitializationHelper::state_impl(), pism::ocean::Pico::state_impl(), pism::ocean::sea_level::InitializationHelper::state_impl(), pism::surface::PIK::state_impl(), pism::surface::DEBMSimple::state_impl(), pism::surface::ForceThickness::state_impl(), pism::surface::InitializationHelper::state_impl(), pism::surface::TemperatureIndex::state_impl(), pism::surface::SurfaceModel::state_impl(), pism::bed::LingleClark::state_impl(), pism::hydrology::Distributed::state_impl(), pism::hydrology::Routing::state_impl(), pism::hydrology::SteadyState::state_impl(), pism::RegionalYieldStress::state_impl(), pism::stressbalance::StressBalance::state_impl(), pism::IceModel::state_variables(), and pism::IceModel::state_variables_diagnostics().