libGimbal 0.1.0
C17-Based Extended Standard Library and Cross-Language Runtime Framework
Loading...
Searching...
No Matches
Todo List
Struct GblApp
Implement me.
Struct GblAppClass
Implement me.
Struct GblBitView
  • finish implementation
  • decide on API for bitwise ops against others
Struct GblContext
-remove me
Struct GblContextClass
  • remove me
Global gblFloatEquals (double a, double b, double e)
rename me gblEqualsf
Struct GblILoggerClass
Global GblScanner_peekPattern
implement me: GblScanner_peekMatch() overload
Global GblScanner_scanPattern
implement me: GblScanner_scanMatch() overload
Global GblScanner_skipPattern
implement me: GblScanner_skipMatch() overload
Global GblScanner_skipToPattern
implement me: GblScanner_skipToMatch() overload
File gimbal_app.h

File gimbal_array_deque.h
  • GblArrayDeque_erase()
File gimbal_byte_array.h
  • default argument overloading
  • consider making it dynamically resizable easily w/ capacity?
  • search/find subbytes
  • GblByteView type?
File gimbal_cmd_parser.h
More descriptive errors, help and version options, use virtual methods for customization points, implement signals for events (probably), process(..) top-level method for handling exiting upon failure, version, or help.
File gimbal_context.h
  • get the eff rid of me
File gimbal_date_time.h
  • GblDateTime_fromIso8601()
  • double GblDateTime_toJulian(): higher res, with seconds
  • toIso8601() string corrupting with msec resolution
  • GblDateTime_format() support ms, us, ns
  • GblDateTime_parse() support ms, us, ns
  • are we misnaming GMT as UTC anywhere?
  • GstDateTime maintains whether fields have been set or not...
File gimbal_doubly_linked_list.h
  • epic BSD-style for loop macros
File gimbal_enum.h
  • Macro DSL for auto registering and declaring enum at the same time
  • Finish docs (method descriptions)
File gimbal_event.h
  • maybe give them timestamps?
  • maybe give them virtuals for onAccept/onReject/onReset?
  • maybe give them source objects?
  • extra extended creation args + default values
File gimbal_exception.h
  • consider making it a GblEvent and using event propagation to implement error filtering?
  • consider supporting child errors which become the children of a rethrown parent error
File gimbal_iallocator.h
  • make specific allocators implement me
File gimbal_ievent_filter.h
  • combine with GblIEventHandler
File gimbal_ievent_handler.h
  • combine me with event filter
File gimbal_ilogger.h
  • obsolete me
File gimbal_iplugin.h
File gimbal_ivariant.h
  • Shouldn't the RHS variant automatically be invalidated after a "move" operation?
File gimbal_linked_list.h
  • GblLinkedList_insert(): insert into middle by index
  • GblLinkedList_insertAfter(): no list head required
  • Slick KOS/BSD-style macro for() looping over nodes
File gimbal_logger.h
  • migrate away from GblThd and towards GblThread
  • Spam filter: deduplicate messages within a certain interval
  • Default constructor values
File gimbal_main_loop.h
  • implement me
File gimbal_module.h
  • advanced unit testing
  • plan out type registration/management
  • rig up option group parsery
  • stop inheriting GblContext
File gimbal_nary_tree.h
Finish implementing commented out API operations
File gimbal_object.h
  • Uninstall all signals upon class destructor (with property uninstallation)
  • Fix construction
    • initializer calls constructor? Wtf?
  • implement class property
  • Get rid of GblObject_findContext()
File gimbal_pattern.h
  • Wrap Tiny C Regex tests in gimbal Unit tests
  • \b word-boundary character class
File gimbal_random.h
  • Changing channels to swap between seeds
File gimbal_ring_buffer.h
  • since nothing is public, make it an opaque struct with its buffer appended to the end of the same allocation
File gimbal_ring_list.h
  • GblRingList_sort()
File gimbal_scanner.h
  • continue testing type-specific peek/scan functions
  • write own scanf() implementation that knows how many characters have been read
  • store GblPattern now instead of GblStringRef
  • peekPattern(), scanPattern()
File gimbal_settings.h
File gimbal_signal.h
  • GBL_SIGNALS() DSL
  • GblSignal_next() for iteration
  • GblSignal_uninstallAll(GblType type)
File gimbal_sort.h
  • gblSortRadix()
File gimbal_string.h
  • gblStrdupa()
  • gblStrndupa()
  • Unit tests
  • Consider moving bulk of GblStringView operations
File gimbal_string_buffer.h
  • GblStringBuffer_swap(...)
  • GblStringBuffer_match()
  • GblStringBuffer_replaceMatch()
  • GblStringBuffer_removeMatch()
  • GblStringBuffer_appendUint64()
  • GblStringBuffer_appendInt64()
File gimbal_string_list.h
  • Add pattern matching API
  • replaceInStrings
  • GblStringList_createSplitPattern()
  • test any "view" method
  • make splice take a range
  • compare/equals strings/arrays/views
  • pushBack/pushFront arrays
  • insert arrays
File gimbal_string_view.hpp
  • return iterators from searches
  • implement forward/reverse iteration
File gimbal_task.h
  • implement me (designing API currently, unimplemented)
File gimbal_test_macros.h
  • need to make an actual exported set of C functions as the top-level entry-point into GBL_TEST_COMPARE(), so that language bindings without macros can use the test framework.
File gimbal_thd.h
  • get rid of me
File gimbal_thread.h
  • properties
  • GblThread_setCallback() has to store within GblBox field
  • GblThread_setClosure() has to store within GblBox field WITH DTOR
  • GblArrayMap for underlying structure doesn't make sensse, use GblArrayList
  • need code for adding and removing to/from vector
  • checking for auto invocation upon constructed won't work–hasn't been set yet
File gimbal_timer.h
  • make profiler out of a stack of these
File gimbal_type.h
  • GblType_next does not iterate over builtin types
    • GblType_foreach() is probably better!
  • GBL_PROTCOL_TYPE solidification and testing
File gimbal_uri.h
  • design URI flags
  • implement parsing, formatting, validating back-end
File gimbal_uuid.h
  • fix reliance on apparently determinsitic random mechanism
  • GblVariant support, stored as a GblRef*?
File gimbal_variant.h
  • function call operator()? Or call into a Closure?
  • serializing/deserializing
  • Ensure unregistering a type also removes its converters
  • when you have an instance/box/object type, have to propagate inner type to box's outer type
File gimbal_version.h
  • implement fuzzy comparison: GblVersion_compare(version, ">=3.23.0")
  • registered GblType?