diff --git a/COPYING.md b/COPYING.md index c40669e..bc2ce24 100644 --- a/COPYING.md +++ b/COPYING.md @@ -1,4 +1,4 @@ -OctaSTD is licensed under the University of Illinois/NCSA Open Source License, +Libostd is licensed under the University of Illinois/NCSA Open Source License, a permissive, non-copyleft, BSD style license. The license text goes as follows: Copyright (c) 2015 Daniel "q66" Kolesa. All rights reserved. @@ -17,7 +17,7 @@ so, subject to the following conditions: this list of conditions and the following disclaimers in the documentation and/or other materials provided with the distribution. -* Neither the names of OctaSTD developers nor any contributors may be +* Neither the names of libostd developers nor any contributors may be used to endorse or promote products derived from this Software without specific prior written permission. diff --git a/README.md b/README.md index 0b18ba0..97cbd91 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ -# octastd +# libostd **Work in progress, not ready for production use.** -OctaSTD is an extension of the C++17 standard library which mainly provides +Libostd is an extension of the C++17 standard library which mainly provides ranges (to replace iterators) but also various other utilities like proper streams, string formatting, coroutines, concurrency utilities and others. It's meant to replace the more poorly designed parts of the C++ standard library to @@ -10,7 +10,7 @@ make the language easier and more convenient to use. It is not feature complete right now, as most things are still being worked on. -Documentation for OctaSTD can be found at https://docs.octaforge.org/octastd. +Documentation for libostd can be found at https://docs.octaforge.org/libostd. Please refer to it for further information (the main page should be answer some more of your questions). You can also read `doc/main_page.md` and other files in there directly if you don't need the API documentation. \ No newline at end of file diff --git a/doc/Doxyfile b/doc/Doxyfile index 89cf6a2..d880a8f 100644 --- a/doc/Doxyfile +++ b/doc/Doxyfile @@ -32,7 +32,7 @@ DOXYFILE_ENCODING = UTF-8 # title of most generated pages and in a few other places. # The default value is: My Project. -PROJECT_NAME = "OctaSTD" +PROJECT_NAME = "libostd" # The PROJECT_NUMBER tag can be used to enter a project or revision number. This # could be handy for archiving the generated documentation or if some version diff --git a/doc/main_page.md b/doc/main_page.md index a0eea1f..8dc0638 100644 --- a/doc/main_page.md +++ b/doc/main_page.md @@ -1,8 +1,8 @@ -# OctaSTD Documentation {#index} +# Libostd Documentation {#index} -## What is OctaSTD? +## What is libostd? -OctaSTD is an extension library for C++17. It enhances the standard library +Libostd is an extension library for C++17. It enhances the standard library to make the language easier and more convenient to use. It's based on the idea is that everything should do what one would expect it to; it strives to aid programmers in writing clean and readable code. @@ -21,20 +21,20 @@ to aid programmers in writing clean and readable code. ### Ranges -OctaSTD started as a range library. Ranges replace iterators; you no longer +Libostd started as a range library. Ranges replace iterators; you no longer need two objects to represent a range and ranges themselves have a clean interface that is easy to adapt for your own thing. Additionally, there is backwards compatibility with iterators, so you can create ranges out of iterator pairs and even turn a range into an iterator! However, the primary way of creating ranges is using native range types. The compatibility stuff -is there mostly so that OctaSTD can work with existing libraries. Additionally, +is there mostly so that libostd can work with existing libraries. Additionally, a large library of generic range algorithms is provided. For more on ranges, see [Ranges](@ref ranges). ### Concurrency -OctaSTD is a complete concurrency framework, implementing a clean and +Libostd is a complete concurrency framework, implementing a clean and extensible system for working with logical tasks. It allows for custom schedulers and by default implements several scheduling approaches (1:1, N:1, M:N). It also implements stackful coroutines (on which the latter @@ -55,9 +55,9 @@ things. ### Strings and formatting -Thanks to ranges, OctaSTD provides very lightweight string slices. The +Thanks to ranges, libostd provides very lightweight string slices. The slices are not zero terminated, so creating sub-slices is fast and avoids -tons of potential heap allocations. None of the OctaSTD string APIs ever +tons of potential heap allocations. None of the libostd string APIs ever assumes termination. Additionally, a completely type-safe string formatting system with C-like @@ -72,7 +72,7 @@ All of this is zero-allocation, it lets the output range take care of that. There are other APIs, too, including environment variable handling, simple platform specific checks, a signal-slot event system or vector math. The -amount is expected to grow in the future, as OctaSTD is still a work in +amount is expected to grow in the future, as libostd is still a work in progress. ## Why C++17? @@ -80,7 +80,7 @@ progress. C++17 includes several things that remove previous blockers, such as being able to hash string range types sanely. Additionally, there are several language features (such as `if constexpr`) that greatly simplify the code. -OctaSTD does not make full use of the standard, so it works with current +Libostd does not make full use of the standard, so it works with current compilers. ## Supported compilers @@ -103,7 +103,7 @@ use GCC/Clang, if you need Visual Studio, LLVM integration exists. ## Supported operating systems and architectures -OctaSTD targets POSIX compliant operating systems and Windows. Features are +Libostd targets POSIX compliant operating systems and Windows. Features are written with those in mind, and other targets are currently not supported. Tier 1 targets are regularly tested. Tier 2 targets are irregularly tested. diff --git a/doc/ranges.md b/doc/ranges.md index df4d558..ef210f9 100644 --- a/doc/ranges.md +++ b/doc/ranges.md @@ -1,6 +1,6 @@ # Ranges {#ranges} -@brief Ranges are the backbone of OctaSTD iterable objects and algorithms. +@brief Ranges are the backbone of libostd iterable objects and algorithms. ## What are ranges? @@ -11,7 +11,7 @@ two iterators as an argument. However, a system like this can be both hard to use and hard to deal with in custom objects, because you suddenly have your state split into two things. -That's why OctaSTD introduces ranges, inspired by D's range system but largely +That's why libostd introduces ranges, inspired by D's range system but largely designed from scratch for C++. A range is a type that represents an interval of values. Just like with C++ @@ -19,7 +19,7 @@ iterators, there are several categories of ranges, with each enhancing the previous in some way. You can use ranges with custom algorithms or standard algorithms that are -implemented by OctaSTD. You can also iterate any input-type range directly +implemented by libostd. You can also iterate any input-type range directly using the range-based for loop: ~~~{.cc} diff --git a/ostd/algorithm.hh b/ostd/algorithm.hh index ffd7303..1e3df0c 100644 --- a/ostd/algorithm.hh +++ b/ostd/algorithm.hh @@ -1,6 +1,6 @@ -/* Algorithms for OctaSTD. +/* Algorithms for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_ALGORITHM_HH diff --git a/ostd/channel.hh b/ostd/channel.hh index 40bac31..e53192b 100644 --- a/ostd/channel.hh +++ b/ostd/channel.hh @@ -39,7 +39,7 @@ struct channel_error: std::logic_error { /** @brief A thread-safe message queue. * * A channel is a kind of message queue (FIFO) that is properly synchronized. - * It can be used standalone or it can be used as a part of OctaSTD's + * It can be used standalone or it can be used as a part of libostd's * concurrency system. * * It stores its internal state in a reference counted manner, so multiple diff --git a/ostd/concurrency.hh b/ostd/concurrency.hh index 7f625f4..4d440d7 100644 --- a/ostd/concurrency.hh +++ b/ostd/concurrency.hh @@ -2,7 +2,7 @@ * * @brief Concurrent/parallel task execution support and related APIs. * - * OctaSTD provides an elaborate concurrency system that covers multiple + * libostd provides an elaborate concurrency system that covers multiple * schedulers with different characteristics as well as different ways to * pass data between tasks. * diff --git a/ostd/event.hh b/ostd/event.hh index be0f08f..04a8799 100644 --- a/ostd/event.hh +++ b/ostd/event.hh @@ -1,6 +1,6 @@ -/* signals/slots for OctaSTD. +/* signals/slots for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_EVENT_HH diff --git a/ostd/ext/sdl_rwops.hh b/ostd/ext/sdl_rwops.hh index 1326c2b..15c4d92 100644 --- a/ostd/ext/sdl_rwops.hh +++ b/ostd/ext/sdl_rwops.hh @@ -1,17 +1,17 @@ /** @addtogroup Extensions * - * @brief Various extensions including integration of OctaSTD with other libs. + * @brief Various extensions including integration of libostd with other libs. * * @{ */ /** @file sdl_rwops.hh * - * @brief Integration of OctaSTD streams with SDL RWops. + * @brief Integration of libostd streams with SDL RWops. * - * This provides integration of OctaSTD streams with SDL RWops so that + * This provides integration of libostd streams with SDL RWops so that * various APIs that provide a generic RWops interface to deal with - * files can use OctaSTD streams. + * files can use libostd streams. * * Supports both SDL1 and SDL2, with SDL2 being default. If you want to * use SDL1 compatibility, define `OSTD_EXT_SDL_USE_SDL1` at build time @@ -38,7 +38,7 @@ namespace sdl { * @{ */ -/** @brief Create an `SDL_RWops` using an OctaSTD stream. +/** @brief Create an `SDL_RWops` using an libostd stream. * * The resulting RWops object is created using `SDL_AllocRW()`. * diff --git a/ostd/format.hh b/ostd/format.hh index 7f6b38c..83cb6cb 100644 --- a/ostd/format.hh +++ b/ostd/format.hh @@ -6,7 +6,7 @@ * * @brief APIs for type safe formatting using C-style format strings. * - * OctaSTD provides a powerful formatting system that lets you format into + * libostd provides a powerful formatting system that lets you format into * arbitrary output ranges using C-style format strings. It's type safe * and supports custom object formatting without heap allocations as well * as formatting of ranges, tuples and more. @@ -88,7 +88,7 @@ struct format_spec; * so for example when someone is formatting into an ostd::appender_range, * it will be just that. * - * This may be specialized in other OctaSTD modules as well. + * This may be specialized in other libostd modules as well. */ template struct format_traits {}; diff --git a/ostd/internal/win32.hh b/ostd/internal/win32.hh index 91945f2..2e56c89 100644 --- a/ostd/internal/win32.hh +++ b/ostd/internal/win32.hh @@ -1,6 +1,6 @@ /* Windows includes. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_INTERNAL_WIN32_HH diff --git a/ostd/io.hh b/ostd/io.hh index b631e39..c79f85d 100644 --- a/ostd/io.hh +++ b/ostd/io.hh @@ -1,6 +1,6 @@ -/* Standard I/O implementation for OctaSTD. +/* Standard I/O implementation for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_IO_HH diff --git a/ostd/platform.hh b/ostd/platform.hh index 9365b52..43b9862 100644 --- a/ostd/platform.hh +++ b/ostd/platform.hh @@ -2,7 +2,7 @@ * * @brief Abstractions for platform (OS, toolchain) specific code. * - * OctaSTD is not only a simple utility library, it also aims to make writing + * libostd is not only a simple utility library, it also aims to make writing * cross-platform code as simple as possible (while sticking to native features * and therefore not making your code feel foreign on the platform). This * module represents the base layer to achieve this. diff --git a/ostd/range.hh b/ostd/range.hh index 8474230..6f407d9 100644 --- a/ostd/range.hh +++ b/ostd/range.hh @@ -1,6 +1,6 @@ -/* Ranges for OctaSTD. +/* Ranges for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_RANGE_HH diff --git a/ostd/stream.hh b/ostd/stream.hh index 3522bd3..3b8a731 100644 --- a/ostd/stream.hh +++ b/ostd/stream.hh @@ -1,6 +1,6 @@ -/* Generic stream implementation for OctaSTD. +/* Generic stream implementation for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_STREAM_HH diff --git a/ostd/string.hh b/ostd/string.hh index 19785d8..3a7bab9 100644 --- a/ostd/string.hh +++ b/ostd/string.hh @@ -1,6 +1,6 @@ -/* String utilities for OctaSTD. +/* String utilities for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_STRING_HH diff --git a/ostd/vecmath.hh b/ostd/vecmath.hh index 9714a95..6e67dec 100644 --- a/ostd/vecmath.hh +++ b/ostd/vecmath.hh @@ -1,6 +1,6 @@ -/* Vector math for OctaSTD. +/* Vector math for libostd. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #ifndef OSTD_VECMATH_HH diff --git a/ostd/vector.hh b/ostd/vector.hh index 1698520..cd7ebbe 100644 --- a/ostd/vector.hh +++ b/ostd/vector.hh @@ -2,7 +2,7 @@ * * @brief New containers and extensions to standard containers. * - * OctaSTD adds various new utilities for standard containers that allow + * libostd adds various new utilities for standard containers that allow * besides other things construction of those containers from ranges. * * Integration of ranges for iteration is however not necessary because diff --git a/src/asm/README.md b/src/asm/README.md index 5528ce1..d70565d 100644 --- a/src/asm/README.md +++ b/src/asm/README.md @@ -1,7 +1,7 @@ *Last sync: 82293a2c03ac2571aafa181ea58a67375a13ceb9.* This directory contains assembly context switching code for different platforms, -taken from the Boost.Context library and adapted to OctaSTD' needs. The files +taken from the Boost.Context library and adapted to libostd's needs. The files are licensed under the Boost Software License, version 1.0, unless specified otherwise. diff --git a/src/asm/jump_all_gas.S b/src/asm/jump_all_gas.S index ca69749..8b8713c 100644 --- a/src/asm/jump_all_gas.S +++ b/src/asm/jump_all_gas.S @@ -1,7 +1,7 @@ /* A stub file that includes the right assembly according to the target * architecture and operating system, for gas only. * - * This file is a part of OctaSTD, provided to you under the NCSA license. + * This file is a part of libostd, provided to you under the NCSA license. * See the COPYING.md file in the main distribution for further information. */ diff --git a/src/asm/make_all_gas.S b/src/asm/make_all_gas.S index dbd784e..fe9033c 100644 --- a/src/asm/make_all_gas.S +++ b/src/asm/make_all_gas.S @@ -1,7 +1,7 @@ /* A stub file that includes the right assembly according to the target * architecture and operating system, for gas only. * - * This file is a part of OctaSTD, provided to you under the NCSA license. + * This file is a part of libostd, provided to you under the NCSA license. * See the COPYING.md file in the main distribution for further information. */ diff --git a/src/asm/ontop_all_gas.S b/src/asm/ontop_all_gas.S index 126885c..86df0fc 100644 --- a/src/asm/ontop_all_gas.S +++ b/src/asm/ontop_all_gas.S @@ -1,7 +1,7 @@ /* A stub file that includes the right assembly according to the target * architecture and operating system, for gas only. * - * This file is a part of OctaSTD, provided to you under the NCSA license. + * This file is a part of libostd, provided to you under the NCSA license. * See the COPYING.md file in the main distribution for further information. */ diff --git a/src/concurrency.cc b/src/concurrency.cc index c0c1004..1f5e163 100644 --- a/src/concurrency.cc +++ b/src/concurrency.cc @@ -1,6 +1,6 @@ /* Concurrency C implementation bits. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #include "ostd/concurrency.hh" diff --git a/src/context_stack.cc b/src/context_stack.cc index 75f7b8d..1f6f0d4 100644 --- a/src/context_stack.cc +++ b/src/context_stack.cc @@ -1,6 +1,6 @@ /* Stack allocation implementation for coroutine contexts. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #include diff --git a/src/io.cc b/src/io.cc index 2b9e250..d03d6bf 100644 --- a/src/io.cc +++ b/src/io.cc @@ -1,6 +1,6 @@ /* I/O streams implementation bits. * - * This file is part of OctaSTD. See COPYING.md for futher information. + * This file is part of libostd. See COPYING.md for futher information. */ #include