Skip to content

ForMyDearest/HanaBase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction

License

Foundation for hana

Main Components

Module Description Reference
fmt Modern formatter with char8_t fmt (MIT), STL (Apache-2.0)
crash Default crash handler with stacktrace SakuraEngine (MIT)
graphviz .dot generator for C++ UGraphviz (MIT)
HString A string compatible with all base character types OpenString (MIT)
LogSystem High-performance log system fmtlog (MIT)
ModuleManager Load dependency libraries into dependency graphs using JSON format SakuraEngine (MIT)

Dependencies

Hana Log Performance

hana::LogSystem is modified from fmtlog::logOnce. It just pushes static info along with formatted msg body onto the queue, which causes smaller program size but higher front-end latency. In my test, it has a front-end latency of approximately 75ns, while static fmtlog::log has a front-end latency of approximately 10ns.

RC

An implementation of intrusive smart pointers, which stuffing an 8-byte counter block into the class header. Unlike std, only RCWeak will add weak reference, and resources of RC will be destroyed when both strong and weak reference counter reach 0.

TODO

  • Fix the bug that log pattern can't support "{{}}"
  • Set up callback interfaces of crash handler for users
  • Cross-platform completion
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy