tree: 818e13d278bb002f9e85914547e416e76a3541fd [path history] [tgz]
  1. analytics/
  2. testdata/
  3. allocator.h
  4. bidirectional_fit_reuse_allocator.cc
  5. bidirectional_fit_reuse_allocator.h
  6. bidirectional_fit_reuse_allocator_test.cc
  7. bit_cast.h
  8. concurrent_map.h
  9. concurrent_map_test.cc
  10. concurrent_ptr.h
  11. concurrent_ptr_test.cc
  12. first_fit_reuse_allocator.cc
  13. first_fit_reuse_allocator.h
  14. first_fit_reuse_allocator_test.cc
  15. fixed_no_free_allocator.cc
  16. fixed_no_free_allocator.h
  17. fixed_no_free_allocator_test.cc
  18. hash.cc
  19. hash.h
  20. memory_pool.h
  21. memory_scope.cc
  22. memory_scope.h
  23. memory_scope_test.cc
  24. move.h
  25. multipart_allocator.cc
  26. multipart_allocator.h
  27. multipart_allocator_test.cc
  28. nb.gyp
  29. nb_test.gyp
  30. pointer_arithmetic.h
  31. polymorphic_downcast.h
  32. README.md
  33. rect.h
  34. ref_counted.cc
  35. ref_counted.h
  36. reuse_allocator_base.cc
  37. reuse_allocator_base.h
  38. reuse_allocator_benchmark.cc
  39. rewindable_vector.h
  40. rewindable_vector_test.cc
  41. run_all_unittests.cc
  42. scoped_ptr.h
  43. simple_profiler.cc
  44. simple_profiler.h
  45. simple_profiler_test.cc
  46. simple_thread.cc
  47. simple_thread.h
  48. starboard_memory_allocator.h
  49. std_allocator.h
  50. std_allocator_test.cc
  51. string_interner.cc
  52. string_interner.h
  53. string_interner_test.cc
  54. test_thread.h
  55. thread_collision_warner.cc
  56. thread_collision_warner.h
  57. thread_local_boolean.h
  58. thread_local_object.h
  59. thread_local_object_test.cc
  60. thread_local_pointer.h
src/nb/README.md

Nanobase

Nanobase is essentially a minified/lightweight version of Chromium‘s base library, though it does include utility classes that Chromium’s base does not.

Its usefulness is found in the fact that its only dependency is starboard, making it very portable and easy to include in projects that don‘t want to depend on Chromium’s base (which currently would require the Chromium repository to be available and that may not be desirable).

An example project that depends on nb is glimp, which was the project that initiated the creation of nb. We wanted glimp to be portable alongside Starboard, and so in order to enable that, we wanted to avoid a dependency on Chromium's base.