Commit Graph

62 Commits

Author SHA1 Message Date
Sébastien Loriot e7b8a4eb17 Merge pull request #8523 from lrineau/CGAL_CGAL-protect_against_macro_free-GF
protect CGAL against macro `free`
2024-10-18 18:00:37 +02:00
Andreas Fabri 42488c7876 free -> freelist; Comment define of _CRTDBG_MAP_ALLOC 2024-10-09 14:44:32 +01:00
Andreas Fabri 98d4690da7 Fix in Unique_hash_map 2024-10-09 13:45:26 +01:00
Sébastien Loriot 1ca47bdabf add missing include directive 2024-10-04 16:09:54 +02:00
Laurent Rineau cb933b1391 make Unique_hash_map movable 2024-04-26 14:42:36 +02:00
Sébastien Loriot 4334028e15 add missing include directive 2022-05-03 18:10:39 +02:00
Sébastien Loriot cf369920a5 use prefix increment 2022-04-07 11:37:32 +02:00
Sébastien Loriot b3a654ebfe remove unused variable 2022-04-07 09:09:10 +02:00
Sébastien Loriot 3207dfedbc move file to internal 2022-04-06 16:07:16 +02:00
Sébastien Loriot ea3c6072ae rename variable 2022-04-06 14:56:13 +02:00
Sébastien Loriot 601b65cad2 use only one typedef 2022-04-06 13:36:39 +02:00
Sébastien Loriot 8c48ef4bfd fix order 2022-04-06 13:16:14 +02:00
Sébastien Loriot c27c162950 remove useless function
even worse some useless cleaning was done before deallocation
2022-04-06 12:08:14 +02:00
Sébastien Loriot e059d68e94 use the first element in the table
before 0 was used as a sentinel for checking if an element
was used, so table[0] could not be used.
2022-04-06 12:02:12 +02:00
Sébastien Loriot 157658848b remove tss variable
@afabri we must check with a benchmark if it does not penalize too much the code
2022-04-06 11:52:21 +02:00
Sébastien Loriot 14c9edb6b0 add reserve when inserting a range 2022-04-06 11:38:16 +02:00
Sébastien Loriot b8782cae39 make Unique_hash_map lookup thread safe
STOP.k was used in lookup
2022-04-06 11:24:24 +02:00
Sébastien Loriot 72f3cd282d use inline initialization 2022-04-06 11:14:50 +02:00
Sébastien Loriot dfadf57c8e remove unused functions 2022-04-06 11:13:24 +02:00
Sébastien Loriot a20c807e4e remove old_ data members
they are now only used locally during the call to rehash()
The only goal was the usage of old_index which seems not
needed anymore
2022-04-06 11:08:41 +02:00
Andreas Fabri d9d85fbe3c Move member variable position in initializer list 2022-03-18 09:08:38 +01:00
Giles Bathgate 16bed97ec5 Remove sizing of hash tables in copy constructors, size just grows 2022-03-17 20:21:12 +00:00
Giles Bathgate 933604b1e6 Init hashtable size in SNC_structure 2022-03-11 21:27:32 +00:00
Giles Bathgate d7be0897d1 Add reserve method to chained_map/Unique_hash_map 2022-03-10 18:24:07 +00:00
Giles Bathgate c12b42bb5e Initalise table on first access 2022-03-10 18:24:07 +00:00
Giles Bathgate 7d0d6a06be Use minimum size of 32, default size 512 2022-03-10 18:24:07 +00:00
Mael Rouxel-Labbé 8166579e55 Merge branch 'PM-Fix_pmaps_reference_types-GF' into PM-Fix_pmaps_reference_types_master-GF 2021-10-11 19:58:07 +02:00
Mael Rouxel-Labbé 590ddf8015 Various fixes for pmaps:
- Use `value_type` when the returned type is not a reference
- Enforce `reference = value_type` if the returned type is not
  a reference (to avoid `typename PM::reference r = get(m, k)`,
  which will take a ref to a temporary if the `reference`
  typedef is an actualy reference)
- Do not use `put_get_helper` if the property map is not a `lvalue`
  **mutable** property map: the `put()` is `map[k] = v`, which
  is broken if `operator[]` does not return a reference
- The concept `boost::lvalue_property_map_tag` requires `operator[](key)`,
  not a reference in `get(map, key)`. You can have a readable property map
  returning a reference through its `get(map, key)`, but if there is
  no `operator[]`, it's just a `boost::readable_property_map_tag`
- Some const correctness to avoid copying maps with state
  or heavy keys in `get(map, key)` / `put(map, key, value)`
- Base the category of a wrapping pmap on what it offers instead
  of just forwarding the base property map's category
- Tried to do something like mutable lvalue pmap:
  * `value_type& operator[](key&)`
  * `ref get(map, const key&)`
  * `put(map, const key&, const value_type&)`
  and non-mutable lvalue pmap:
  * `const value_type& operator[](const key&)`
  * `ref get(map, const key&)`
  but not everything fits properly...
2021-10-08 15:38:47 +02:00
Mael Rouxel-Labbé df560987a6 Whitespace & cleaning changes 2021-10-08 12:13:43 +02:00
Sébastien Loriot cec93d0c9f special case for pointers 2021-05-27 14:36:55 +02:00
Sébastien Loriot 18ca811f7f hash value of handles use directly the address of the node 2021-05-27 12:36:17 +02:00
Sébastien Loriot 0779373835 extra run of the script to remove tabs and trailing whitespaces
right after the  merge of 4.14 release branch

+ manual fix on one line in:
    * Arrangement_on_surface_2/include/CGAL/IO/Arr_text_formatter.h
    * .travis/generate_travis.sh
2020-03-26 14:16:06 +01:00
Sébastien Loriot 52164b1fba First pass on removing license notice in header for LGPL files 2019-10-19 15:40:30 +02:00
Sébastien Loriot 7356421d80 introduce Commercial license SPDX tag 2019-10-19 12:15:19 +02:00
Sébastien Loriot 9bd9c68b83 update LGPL[23]+ and GPL[23]+ SPDX tags
ack -l --no-svg "SPDX-License-Identifier: GPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-3.0+/SPDX-License-Identifier: GPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-3.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-3.0+/SPDX-License-Identifier: LGPL-3.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: GPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: GPL-2.0+/SPDX-License-Identifier: GPL-2.0-or-later/"
ack -l --no-svg "SPDX-License-Identifier: LGPL-2.0\+" | xargs sed -i "s/SPDX-License-Identifier: LGPL-2.0+/SPDX-License-Identifier: LGPL-2.0-or-later/"
2019-10-18 21:57:54 +02:00
Sébastien Loriot c0edb5ecaa remove CGAL_CXX11 macro usage 2019-07-08 11:42:17 +02:00
Andreas Fabri 4581f1b7a8 Morte replacements 2019-06-05 08:39:55 +02:00
Andreas Fabri c5cbd4a480 Fix typo; Remove unused typedef 2018-04-18 07:59:57 +01:00
Laurent Rineau 095c27e2be cosmetic changes 2018-04-17 17:14:19 +02:00
Andreas Fabri 97ac4d5f51 Exploit that construct is variadic 2018-04-17 14:15:07 +01:00
Andreas Fabri 7cbffac35b Deal with deprecated functions allocator<T>::construct/destroy 2018-04-17 13:35:04 +01:00
Andreas Fabri c493359b62 Convex_hull_3 2018-01-18 10:11:33 +00:00
Sébastien Loriot 0698f79aff add SPDX identifier for files under the LGPL-3+ license 2017-11-12 10:17:50 +01:00
Andreas Fabri e26e60dd6c Add Default to Convex_hull_graph_traits_3; BGLize some code 2016-11-22 12:27:18 +01:00
Mael Rouxel-Labbé 3016548bad Fix the specialization of Boost's assoc_pmap using CGAL::Unique_hash_map
The default template parameters of the hash map were taken.
2016-10-24 10:32:05 +02:00
Mael Rouxel-Labbé 0f97115ce8 Polish 2016-10-24 10:31:53 +02:00
Sébastien Loriot f32b291f0b improve specialization of boost::associative_property_map for Unique_hash_map 2016-10-24 10:23:11 +02:00
Laurent Rineau 1aefb3b0f3 include <CGAL/config.h>, not <CGAL/basic.h> 2016-09-30 15:23:14 +02:00
Laurent Rineau 51f5697d3d Add missing #include 2016-09-30 15:23:14 +02:00
Sébastien Loriot cdec3d6414 make the edge_descriptor of Polyhedron hashable 2014-07-23 08:20:16 +02:00