| Home | Libraries | People | FAQ | More

### Header <boost/icl/split_interval_map.hpp>

    namespace boost {
      namespace icl {
        template<typename DomainT, typename CodomainT,
                 typename Traits = icl::partial_absorber,
                 ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(ICL_COMPARE_DEFAULT, DomainT),
                 ICL_COMBINE Combine = ICL_COMBINE_INSTANCE(icl::inplace_plus, CodomainT),
                 ICL_SECTION Section = ICL_SECTION_INSTANCE(icl::inter_section, CodomainT),
                 ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare),
                 ICL_ALLOC Alloc = std::allocator>
          class split_interval_map;

        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct is_map<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct has_inverse<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct is_interval_container<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct is_interval_splitter<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct absorbs_identities<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct is_total<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
        template<typename DomainT, typename CodomainT, typename Traits,
                 ICL_COMPARE Compare, ICL_COMBINE Combine, ICL_SECTION Section,
                 ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
          struct type_to_string<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>;
      }
    }