Commit graph

55 commits

Author SHA1 Message Date
6afe127d13 Reference-counting helpers - Copy/move cons/ass w/ casts
Added tests and fixed a few bugs.
2019-01-02 17:14:08 +01:00
8e2c773de1 Reference-counting helpers - Swap 2019-01-02 16:51:18 +01:00
ddaa46867d Reference counting helpers - Progress, tests
* Assignment copy/move operators
 * Boolean conversion / ! operator
 * Content access
2019-01-02 15:50:21 +01:00
f0e46da2f5 Reference counting helpers - Base class, partial pointers 2019-01-02 13:27:25 +01:00
bb94169a31 VFS - Ported from old LW code 2018-12-23 22:31:34 +01:00
68716e9193 Filesystem - Actual filesystem operations
* Entry type, directory listing
 * Directory creation and deletion
 * File deletion
 * Move
2018-12-23 22:30:11 +01:00
3ef6dcd55e Path style comparison operators 2018-12-23 22:28:33 +01:00
f519387dad MultiArrays - Moved to a separate header 2018-12-23 18:34:43 +01:00
7ea9b5a9c5 Registration - Fixed headers 2018-12-23 18:29:11 +01:00
fc3415047f Filesystem paths - Path style support 2018-12-23 18:17:55 +01:00
96d81b9cd3 T_FSPathStyle - Most methods made constexpr 2018-12-22 09:17:16 +01:00
af1648dcb4 Strings - T_Character is now mostly constexpr 2018-12-20 22:30:44 +01:00
ee02f9c5c7 Filesystem - Path style abstraction
A class that carries information about a filesystem path's style: case
sensitivity, path separator and whether it supports drive letters.
2018-12-19 08:30:11 +01:00
42c2d48f1b Arrays - Iterators for T_{Array,StaticArray,AutoArray} 2018-12-16 15:24:40 +01:00
c31280325f Arrays - Use array helpers 2018-12-15 20:42:54 +01:00
71fee96926 Utilities - Array helpers
A bunch of utility functions to move array data around, based on the
array elements' types.
2018-12-15 20:42:39 +01:00
da2034c589 Utilities - M_UNUSED macro 2018-12-15 20:40:37 +01:00
ed126a2d5e Optional type - Don't use target() in operators 2018-12-15 20:40:14 +01:00
30d8d3057e Windows "compatibility"
* Makefile changes allowing for cross-compilation
* SRDData: had to rename an enum member from ERROR to ERR because
apparently creating a macro called ERROR is a thing in the windows
headers
* DynLib: ported
* Strings: fixes in toOSString, untested for now
* Fixes in some tests
* TODO list update
2018-06-17 12:39:02 +02:00
ae2ad1f8b4 Arrays - Predicate-based indexOf/contains methods 2018-05-09 14:12:27 +02:00
d823721fb2 Strings - Character mapping, conversion to upper/lowercase 2018-05-08 13:58:39 +02:00
8f939b6a32 MultiArray - Function that returns total values count 2018-05-07 12:57:26 +02:00
d2122aff38 Buffers - append() method 2018-04-30 09:10:39 +02:00
6f52668540 SyntaxTree - Location field 2018-03-31 22:38:26 +02:00
b659f2f237 Syntax tree - Visitors
Syntax trees can return a pre-configured visitor object that can be used
to visit all the nodes. Also added a method to create a "root node"
handle for the visitor, because I'm a lazy bastard.
2018-03-31 22:11:00 +02:00
a9762a901e Syntax tree - Added basic abstraction 2018-03-31 16:58:13 +02:00
165c19109f Streams - Ability to read exception path 2017-12-28 09:52:30 +01:00
0651ea28e0 Streams - Added optional path to errors 2017-12-27 19:00:56 +01:00
424ba93472 Files - Use T_FSPath 2017-12-27 14:57:24 +01:00
5497856be2 Filesystem abstraction 2017-12-27 10:49:31 +01:00
324774848f Sets - Missing returns in assignment operators 2017-12-14 18:53:03 +01:00
04726e2067 Hash tables - Accessing values in RW mode 2017-12-10 12:00:17 +01:00
53feddb4ee SRD errors - Errors, warnings and notes
Replaced the "details" flag with a type which indicates whether an error
record contains an actual error, a warning or just a note.
2017-12-02 09:16:17 +01:00
86a3fe34b4 String builder - truncate() method 2017-11-29 09:24:51 +01:00
5db261909a SRD parser - Access value as a RW reference 2017-11-17 15:44:49 +01:00
1ce16d63cb Arrays - Bug fix on resize( )
Default constructor was not being called for new items.
2017-11-14 20:58:01 +01:00
9f666eea49 Sets - Fixed bug with heap-allocated sets 2017-11-09 09:59:43 +01:00
cdbc81094d Sets - Imported from prototype 2017-11-09 09:40:56 +01:00
0bc11d32d7 Algorithms - Visitor implementation 2017-11-08 09:07:04 +01:00
46fa84d967 Types - T_Optional access
Changed so it's relatively similar to the interface of pointers.
2017-11-07 17:40:02 +01:00
82fc8406b3 Types - Helper for enum-based flags 2017-11-07 13:38:41 +01:00
3adfdadd11 SRDIO - Memory target can ignore comments 2017-11-06 10:53:54 +01:00
073fcb3d5e SRD locations - << to string builder fixed 2017-11-05 19:12:10 +01:00
1b1be9e6b2 KV tables - getOrCreate 2017-11-05 13:00:35 +01:00
c35f4c6644 Arrays - std::initializer_list support for dynamic arrays 2017-11-04 12:39:41 +01:00
3745631e02 Arrays - Fixed drug-induced error in ::empty() 2017-11-03 11:38:04 +01:00
ec0dba97f2 Arrays - Fixed bad asserts in iterators 2017-11-03 11:33:48 +01:00
1c0527caab Arrays - resize( ) 2017-11-03 11:21:17 +01:00
4d336e7086 Arrays - New utility methods
empty(), last() and removeLast()
2017-11-03 09:35:14 +01:00
90048ad3cc Arrays - C++-style iterators 2017-11-02 14:23:19 +01:00