bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

new modules list-c++, set-c++, oset-c++, map-c++, omap-c++


From: Bruno Haible
Subject: new modules list-c++, set-c++, oset-c++, map-c++, omap-c++
Date: Sun, 02 Feb 2020 19:39:54 +0100
User-agent: KMail/5.1.3 (Linux/4.4.0-171-generic; KDE/5.18.0; x86_64; ; )

The container types (modules list, set, oset, map, omap) can be used in C++,
with casts. It is customary in C++ to use template classes in order to
avoid casts in user code. I'm doing this here:


Data type         C++ class     Module     Include file

Sequential list   gl_List       list-c++   "gl_list.hh"
Set               gl_Set        set-c++    "gl_set.hh"
Ordered set       gl_OSet       oset-c++   "gl_oset.hh"
Map               gl_Map        map-c++    "gl_map.hh"
Ordered map       gl_OMap       omap-c++   "gl_omap.hh"


This is not perfect yet:
  - It would be possible to put these classes into a namespace.
  - It would probably be possible (with some work) to make the iterators
    implement the usual C++ idioms, without reducing the efficiency of the
    iterators.
But it should be usable.

Attachment: 0001-list-c-New-module.patch
Description: Text Data

Attachment: 0002-list-c-Add-tests.patch
Description: Text Data

Attachment: 0003-set-c-New-module.patch
Description: Text Data

Attachment: 0004-set-c-Add-tests.patch
Description: Text Data

Attachment: 0005-oset-c-New-module.patch
Description: Text Data

Attachment: 0006-oset-c-Add-tests.patch
Description: Text Data

Attachment: 0007-map-c-New-module.patch
Description: Text Data

Attachment: 0008-map-c-Add-tests.patch
Description: Text Data

Attachment: 0009-omap-c-New-module.patch
Description: Text Data

Attachment: 0010-omap-c-Add-tests.patch
Description: Text Data

Attachment: 0011-Document-the-new-modules-list-c-set-c-oset-c-map-c-o.patch
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]