Commit Graph

126 Commits (3906e5f1ee26279cac22ebea2920d643ffb61942)

Author SHA1 Message Date
Daniel Kolesa 3906e5f1ee build: add meson as the new buildsystem for libostd 2018-10-27 23:49:49 +02:00
Daniel Kolesa 08e8dc3f19 pass real target to dependency callbacks 2018-05-02 21:00:37 +02:00
Daniel Kolesa 3673438e8c build: dynamic dependencies using dependency callbacks 2018-05-02 20:32:47 +02:00
Daniel Kolesa 6845f5a8d8 add a way to conditionally use rules according to predicate 2018-05-01 20:46:21 +02:00
Daniel Kolesa 0915a9e6b5 prepare for more elaborate build rule matching 2018-04-30 19:51:02 +02:00
Daniel Kolesa c61dcb9597 simplify rule matching 2018-04-29 20:27:32 +02:00
Daniel Kolesa 3506facc61 move make impl bits into a source file 2018-04-24 01:24:48 +02:00
Daniel Kolesa 621bad7474 forgot to add file 2018-04-23 21:24:46 +02:00
Daniel Kolesa 493f31fabf make coroutines immovable (moving invalidates inside pointers)
If you move a coroutine, all references to the coroutine from
inside of it become invalid, including e.g. yielders. Therefore,
make coroutines immovable to prevent weird bugs...

but also, make the guts of coroutine context a bit more move
friendly (like, do not change current status after context switch
and always do it outside), in case a solution is found in the
future.
2018-04-21 22:39:07 +02:00
Daniel Kolesa a85cf13c56 add status/symlink_status/file_size/hard_link_count 2018-04-20 01:22:28 +02:00
Daniel Kolesa af87ee2a8b guard the feature macros 2018-04-19 02:16:35 +02:00
Daniel Kolesa d8e2fe4f31 feature macros for utimensat availability 2018-04-19 02:10:53 +02:00
Daniel Kolesa 90f9285b16 path conversion operators, simplify usage 2018-04-18 18:40:45 +02:00
Daniel Kolesa 049ce44d3a replace path aborts with exceptions 2018-04-18 10:58:02 +02:00
Daniel Kolesa 9aa03b8a9f remove c++ std::filesystem stuff 2018-04-18 03:57:22 +02:00
Daniel Kolesa 307675731c add fs APIs for creating/removing/renaming, mtime and globs 2018-04-18 03:40:03 +02:00
Daniel Kolesa 64a529254c add checking file types to directory entry 2018-04-17 23:13:46 +02:00
Daniel Kolesa 4c0c4e8f41 directory entries are for one-time read only, remove assign/clear 2018-04-17 03:05:00 +02:00
Daniel Kolesa 83dc828a89 re-add directory_entry 2018-04-17 03:02:51 +02:00
Daniel Kolesa 77b267a34b file_status -> file_mode, directory_entry -> file_info 2018-04-17 02:54:05 +02:00
Daniel Kolesa d011daad3b implement path cwd/home/temp/absolute/relative/canonical/existence/equivalence 2018-04-17 02:26:45 +02:00
Daniel Kolesa 755e0f3934 update listdir example to use path 2018-04-16 03:20:40 +02:00
Daniel Kolesa 0d0655b09e add APIs for checking file types and permissions 2018-04-16 03:10:15 +02:00
Daniel Kolesa f395562734 memory-safe dir ranges 2018-04-16 01:59:10 +02:00
Daniel Kolesa 1a13f71390 saner recursive dir iteration ordering 2018-04-16 01:10:03 +02:00
Daniel Kolesa ad635c8a23 add recursive directory range 2018-04-16 00:19:48 +02:00
Daniel Kolesa 4ef512effa add a range to iterate a directory 2018-04-15 23:23:43 +02:00
Daniel Kolesa b0e8b3fbd0 do not use the GNU-extension execvpe 2018-04-11 02:23:17 +02:00
Daniel Kolesa 3f939f2e1a avoid silly gcc warning 2018-01-17 22:58:34 +01:00
Daniel Kolesa 827aed2bb9 minor fixes 2018-01-15 21:05:58 +01:00
Daniel Kolesa 69d5d11da1 POD => trivial, also clarify tstrlen 2018-01-13 22:34:14 +01:00
Daniel Kolesa dab034d9e0 export dem symbols 2018-01-11 23:38:03 +01:00
Daniel Kolesa a93ae710d0 universal internal strlen for all char types 2018-01-11 23:27:45 +01:00
Daniel Kolesa 375c014f7a vtable translation unit for thread pool + warns 2018-01-10 02:57:29 +01:00
Daniel Kolesa cbc75ce97c fix 4-byte utf-8 encode 2018-01-08 00:27:55 +01:00
Daniel Kolesa 4a2e5cd557 completely unify encode funcs 2018-01-07 18:44:12 +01:00
Daniel Kolesa 24d1b5ec25 various traits and constants for unicode types 2018-01-07 17:13:53 +01:00
Daniel Kolesa 640a9714f0 universal templated encode, iter for all types 2018-01-07 02:17:05 +01:00
Daniel Kolesa 4343bb408d implement compare/case_compare for all slice types 2018-01-07 01:15:17 +01:00
Daniel Kolesa e3362e6c9e allow encoding of noncharacters 2018-01-06 01:03:43 +01:00
Daniel Kolesa fa5ae71202 perform validity check when decoding utf-32 into itself 2018-01-06 00:52:50 +01:00
Daniel Kolesa ed82fa0233 unified length handling for all encodings 2018-01-06 00:42:14 +01:00
Daniel Kolesa aeb5023b30 relax the rules of zero-argument utf::length 2018-01-06 00:27:04 +01:00
Daniel Kolesa 51d7a62bee eliminate -Wweak-vtables warnings 2018-01-05 22:48:38 +01:00
Daniel Kolesa 200919d96f add funcs to deal with decoding/encoding of wchar_t values/sequences 2018-01-05 19:26:30 +01:00
Daniel Kolesa be25d42660 refactor unicode impl 2018-01-05 18:55:34 +01:00
Daniel Kolesa d74736d8f4 add utf-16 decoding/encoding support 2018-01-05 02:18:36 +01:00
Daniel Kolesa 723c06c612 various warning fixes with -Weverything 2018-01-03 17:13:38 +01:00
Daniel Kolesa fd4b26046c noexcept the ctype funcs 2018-01-03 02:12:23 +01:00
Daniel Kolesa ad149ff0f6 unicode-aware case-insensitive string compares 2018-01-03 01:22:07 +01:00