Commit Graph

15 Commits

Author SHA1 Message Date
Andrea Blankenstijn a54dc9c2b2 some comment edits, readme draft 2021-08-27 16:08:14 +02:00
Andrea Blankenstijn f6ae2c51e8 Comment a bit the code. 2021-08-23 23:50:14 +02:00
Andrea Blankenstijn a19d2ea6bd - mark as const every single read only variable.
- mark as const every pointer that can be const.
- in implementation mark const args passed by value that are meant to be read-only.
- wrap in a lambda complex initializations of (const) values.
- argument passing:
  - pass by value arguments of cheap-to-copy types or meant to be copied
    anyway.
  - pass by (const) reference args not meant to outlive called
    function scope and not cheap-to-copy.
  - pass (const) pointers to (const) args when null is a valid option
    and pointed data aren't expected to outlive function scope.
  - use string_view for non-owned strings (not meant to outlive function
    scope).
  - use span for collection types like vector and arrays.
  - fancy pointers passing:
    - pass by value if a reference will be held:
    - pass by const reference if a reference _may_ be hell.
    - when no references are meant to be held:
        - dereference the pointer to pass the pointed data by reference
          if null is not an option.
        - pass the underlying raw pointer if null is an option.
… and random subtle changes and fixes here and there that I forgot to mention.
2021-08-22 00:57:55 +02:00
Andrea Blankenstijn 76d319fb69 trash commit, style, small api changes (ref vs ptr) and who knows 2021-08-19 15:00:44 +02:00
Andrea Blankenstijn 3458ca123b pass by value vs by ref thing 2021-08-14 16:37:42 +02:00
Andrea Blankenstijn 3570cf301a format code 2021-08-14 09:25:28 +02:00
Andrea Blankenstijn f78fa82ae8 better smart ptr owner semantic 2021-08-12 23:27:09 +02:00
Andrea Blankenstijn 43dd6ab820 use raw ptr instead of fancy one when no references are kept after function
exit.
2021-08-12 15:55:47 +02:00
Andrea Blankenstijn 79f83abe3b smart ptr and a bit of doc 2021-08-10 23:48:19 +02:00
Andrea Blankenstijn cab6fa0cf4 wip general code improvement 2021-08-07 20:11:28 +02:00
Andrea Blankenstijn 13bdb970c0 config clang-tidy linter and fix code based on linting err/warn 2021-07-30 21:37:14 +02:00
Andrea Blankenstijn 3b6e900a22 format code with custom clang-format style 2021-07-29 16:06:03 +02:00
Andrea Blankenstijn 657c7f852c fix struct/class forward decl incoherence, forgotten override spec and make it compile with clang 12 2021-07-28 15:15:32 +02:00
Andrea Blankenstijn 4b87af7bc4 various changes and fixes 2021-07-23 20:08:52 +02:00
Andrea Blankenstijn dd3ff9358a big hierarchy refactor, some little changes, add Font class 2021-07-18 18:26:12 +02:00