diff options
| author | ljfa <ljfa-ag@web.de> | 2015-09-21 19:53:48 +0200 |
|---|---|---|
| committer | ljfa <ljfa-ag@web.de> | 2015-09-21 19:53:48 +0200 |
| commit | 5cc13f6a358b7d4e7b5141ca6ee4eba586bea851 (patch) | |
| tree | 990d93c107dd59947f5068ed0497f374e29994e9 | |
| parent | 8773152a57a4e1524be66c7d6777c48de246040f (diff) | |
| download | Project-Tick-5cc13f6a358b7d4e7b5141ca6ee4eba586bea851.tar.gz Project-Tick-5cc13f6a358b7d4e7b5141ca6ee4eba586bea851.zip | |
Version bump
Remove PRD.md
| -rw-r--r-- | CMakeLists.txt | 2 | ||||
| -rw-r--r-- | PRD.md | 60 |
2 files changed, 1 insertions, 61 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 39a3a5759c..30441d77d0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.0) project(libnbt++ - VERSION 2.1) + VERSION 2.3) add_definitions(-std=c++11) include_directories(include) diff --git a/PRD.md b/PRD.md deleted file mode 100644 index f7b46f1a8a..0000000000 --- a/PRD.md +++ /dev/null @@ -1,60 +0,0 @@ -# libnbt++2 Product Requirements Document - -### Purpose -Provide a C++ interface for working with NBT data, particularly originating -from Minecraft. - -### Scope -External Minecraft utilities that read or manipulate parts of savefiles, -such as: -- (Graphical) NBT editors -- Inventory editors -- Tools for reading or changing world metadata -- Map editors and visualizers - -### Definitions, Acronyms and Abbreviations -- **libnbt++1:** The predecessor of libnbt++2. -- **Minecraft:** A sandbox voxel world game written in Java, developed by - Mojang. -- **Mojang's implementation:** The NBT library written in Java that Mojang - uses in Minecraft. -- **NBT:** Named Binary Tag. A binary serialization format used by Minecraft. -- **Tag:** A data unit in NBT. Can be a number, string, array, list or - compound. - -### Product Functions -- /RF10/ Reading and writing NBT data files/streams with or without - compression. -- /RF20/ Representing NBT data in memory and allowing programs to read or - manipulate it in all the ways that Mojang's implementation and libnbt++1 - provide. -- /RF30/ A shorter syntax than in libnbt++1 and preferrably also Mojang's - implementation. -- /RF35/ Typesafe operations (no possibly unwanted implicit casts), in case - of incompatible types exceptions should be thrown. -- /RF40/ The need for insecure operations and manual memory management should - be minimized; references and `std::unique_ptr` should be preferred before - raw pointers. -- /RF55/ A wrapper for tags that provides syntactic sugar is preferred - before raw `std::unique_ptr` values. -- /RF50/ Move semantics are preferred before copy semantics. -- /RF55/ Copying tags should be possible, but only in an explicit manner. -- /RF60/ Checked conversions are preferred, unchecked conversions may be - possible but discouraged. - -### Product Performance -- /RP10/ All operations on (not too large) NBT data should not be slower - than their counterparts in Mojang's implementation. -- /RP20/ The library must be able to handle all possible NBT data that - Mojang's implementation can create and handle. -- /RP30/ Often used operations on large Lists, Compounds and Arrays must - be of at most O(log n) time complexity if reasonable. Other operations - should be at most O(n). - -### Quality Requirements -- Functionality: good -- Reliability: normal -- Usability: very good -- Efficiency: good -- Changeability: normal -- Transferability: normal |
