選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

README.md 2.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # Scope Guard
  2. [![Build Status](https://travis-ci.org/offa/scope-guard.svg?branch=master)](https://travis-ci.org/offa/scope-guard)
  3. [![GitHub release](https://img.shields.io/github/release/offa/scope-guard.svg)](https://github.com/offa/scope-guard/releases)
  4. [![License](https://img.shields.io/badge/license-GPLv3-yellow.svg)](LICENSE)
  5. ![C++](https://img.shields.io/badge/c++-17-green.svg)
  6. Implementation of *Scope Guards* (`scope_exit`, `scope_success`, `scope_fail`) and `unique_resource` as proposed in [**P0052R8**][2] (former [N3949][1]).
  7. ## Compatibility
  8. This implementation conforms to [P0052][2], except:
  9. ###### Namespace
  10. The namespace `sr` is used instead of `std`.
  11. ###### Filenames
  12. The filenames contain a `.h` extension. To enable the compatible header as specified in the document the CMake option `ENABLE_COMPAT_HEADER` can be used. This will generate and install an additional header named `scope` (without file extension).
  13. ## Documentation
  14. - [*P0052R8 - Generic Scope Guard and RAII Wrapper for the Standard Library*][2] (P. Sommerlad, A. L. Sandoval, E. Niebler, D. Krügler)
  15. - [*N3949 - Scoped Resource - Generic RAII Wrapper for the Standard Library*][1] (P. Sommerlad, A. L. Sandoval)
  16. ## License
  17. **GNU General Public License (GPL)**
  18. This program is free software: you can redistribute it and/or modify
  19. it under the terms of the GNU General Public License as published by
  20. the Free Software Foundation, either version 3 of the License, or
  21. (at your option) any later version.
  22. This program is distributed in the hope that it will be useful,
  23. but WITHOUT ANY WARRANTY; without even the implied warranty of
  24. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  25. GNU General Public License for more details.
  26. You should have received a copy of the GNU General Public License
  27. along with this program. If not, see <http://www.gnu.org/licenses/>.
  28. [1]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3949.pdf
  29. [2]: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0052r8.pdf