Skip to content
Snippets Groups Projects
  1. Mar 06, 2018
    • Mark OLESEN's avatar
      ENH: dedicated HashSetOps, HashTableOps namespaces · bcabe827
      Mark OLESEN authored
      - relocated HashSetPlusEqOp and HashTablePlusEqOp to
        HashSetOps::plusEqOp and HashTableOps::plusEqOp, respectively
      
      - additional functions for converting between a labelHashSet
        and a PackedBoolList or List<bool>:
      
        From lists selections to labelHashSet indices:
      
            HashSetOps::used(const PackedBoolList&);
            HashSetOps::used(const UList<bool>&);
      
        From labelHashSet to list forms:
      
            PackedBoolList bitset(const labelHashSet&);
            List<bool> bools(const labelHashSet&);
      bcabe827
  2. Mar 01, 2018
    • Mark OLESEN's avatar
      ENH: cleanup of ListOps, ListListOps. Adjustments to List, PackedList. · 15f72608
      Mark OLESEN authored
      - relocated ListAppendEqOp and ListUniqueEqOp to ListOps::appendEqOp
        and ListOps::UniqueEqOp, respectively for better code isolation and
        documentation of purpose.
      
      - relocated setValues to ListOps::setValue() with many more
        alternative selectors possible
      
      - relocated createWithValues to ListOps::createWithValue
        for better code isolation. The default initialization value is itself
        now a default parameter, which allow for less typing.
      
        Negative indices in the locations to set are now silently ignored,
        which makes it possible to use an oldToNew mapping that includes
        negative indices.
      
      - additional ListOps::createWithValue taking a single position to set,
        available both in copy assign and move assign versions.
        Since a negative index is ignored, it is possible to combine with
        the output of List::find() etc.
      
      STYLE: changes for PackedList
      
      - code simplication in the PackedList iterators, including dropping
        the unused operator() on iterators, which is not available in plain
        list versions either.
      
      - improved sizing for PackedBoolList creation from a labelUList.
      
      ENH: additional List constructors, for handling single element list.
      
      - can assist in reducing constructor ambiguity, but can also helps
        memory optimization when creating a single element list.
        For example,
      
          labelListList labels(one(), identity(mesh.nFaces()));
      15f72608
  3. Mar 02, 2018
  4. Mar 03, 2018
  5. Mar 02, 2018
    • Mark OLESEN's avatar
      ENH: cleanup, extend zero/one classes · 13ea73c3
      Mark OLESEN authored
      - constexpr, noexcept on various bits
      
      - addition of a 'one::minus' class that returns '-1' instead of '1'.
        There are no additional operations defined for this class,
        but it can be used in various places to signal alternative behaviour
        such as "initialize to a negative or other invalid value"
      13ea73c3
  6. Mar 04, 2018
    • Mark OLESEN's avatar
      ENH: pre-cleanup of Xfer class (issue #639) · b4703f4a
      Mark OLESEN authored
      - This class is largely a pre-C++11 holdover, prior to having movable
        references.
      
      - align internals with autoPtr instead of always unconditionally
        allocating memory. The valid() method can be used to check for a null
        pointer.
      
      - Consolidate into a single file, in anticipation of future removal.
      b4703f4a
  7. Feb 28, 2018
    • Mark OLESEN's avatar
      ENH: add Xfer rvalue(), valid() methods · 081783db
      Mark OLESEN authored
      - rvalue() is a (transitional) means of converting Xfer content to a
        reference for move construct, move assign semantics.
      
      - valid() method for consistency with autoPtr and tmp classes
      081783db
  8. Feb 27, 2018
  9. Feb 22, 2018
  10. Feb 28, 2018
  11. Feb 23, 2018
  12. Feb 22, 2018
  13. Feb 21, 2018
  14. Feb 20, 2018
  15. Feb 19, 2018
  16. Feb 21, 2018
  17. Feb 15, 2018
  18. Feb 14, 2018