You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
offa 027a53b1a3 Factory fucntion make_unique_resource_checked() added. 7 years ago
cmake Coverage added (fixes #24). 7 years ago
include Factory fucntion make_unique_resource_checked() added. 7 years ago
script Build steps moved to script. 7 years ago
test Factory fucntion make_unique_resource_checked() added. 7 years ago
.gitignore Project initialized. 7 years ago
.travis.yml Clang 5.0 CI build added and Clang 3.8 removed. 7 years ago
CMakeLists.txt Release v0.0.3. 7 years ago
CONTRIBUTING.md Contribution Guide added (#15). 7 years ago
LICENSE Initial commit 7 years ago
README.md Documentation updated (#27). 7 years ago

README.md

Scope Guard

Build Status GitHub release License

Implementation of scope_guard and unique_resource as proposed in P0052 (former N3949).

Compatibility

This implementation conforms to P0052, except:

Namespace

Another namespace is used instead of std.

Filenames

The filenames contain a .h extension.

These deviations are necessary through standard requirements.

std::uncaught_exceptions()

The function std::uncaught_exceptions() is not available in C++14 and is therefore replaced with std::uncaught_exception(). This has some limitations, but is the only solution until C++17 is used.

Documentation

License

GNU General Public License (GPL)

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.