Eliminate the "store" global variable
Also, move a few free-standing functions into StoreAPI and Derivation. Also, introduce a non-nullable smart pointer, ref<T>, which is just a wrapper around std::shared_ptr ensuring that the pointer is never null. (For reference-counted values, this is better than passing a "T&", because the latter doesn't maintain the refcount. Usually, the caller will have a shared_ptr keeping the value alive, but that's not always the case, e.g., when passing a reference to a std::thread via std::bind.)
Showing
- perl/lib/Nix/Store.xs 23 additions, 36 deletionsperl/lib/Nix/Store.xs
- src/libexpr/common-opts.cc 1 addition, 1 deletionsrc/libexpr/common-opts.cc
- src/libexpr/common-opts.hh 2 additions, 0 deletionssrc/libexpr/common-opts.hh
- src/libexpr/eval.cc 2 additions, 1 deletionsrc/libexpr/eval.cc
- src/libexpr/eval.hh 6 additions, 4 deletionssrc/libexpr/eval.hh
- src/libexpr/parser.y 1 addition, 1 deletionsrc/libexpr/parser.y
- src/libexpr/primops.cc 28 additions, 29 deletionssrc/libexpr/primops.cc
- src/libmain/shared.cc 4 additions, 5 deletionssrc/libmain/shared.cc
- src/libmain/shared.hh 4 additions, 4 deletionssrc/libmain/shared.hh
- src/libstore/build.cc 22 additions, 63 deletionssrc/libstore/build.cc
- src/libstore/derivations.cc 61 additions, 20 deletionssrc/libstore/derivations.cc
- src/libstore/derivations.hh 25 additions, 11 deletionssrc/libstore/derivations.hh
- src/libstore/download.cc 1 addition, 1 deletionsrc/libstore/download.cc
- src/libstore/download.hh 4 additions, 1 deletionsrc/libstore/download.hh
- src/libstore/gc.cc 23 additions, 26 deletionssrc/libstore/gc.cc
- src/libstore/local-store.cc 2 additions, 2 deletionssrc/libstore/local-store.cc
- src/libstore/local-store.hh 4 additions, 0 deletionssrc/libstore/local-store.hh
- src/libstore/misc.cc 50 additions, 58 deletionssrc/libstore/misc.cc
- src/libstore/misc.hh 0 additions, 40 deletionssrc/libstore/misc.hh
- src/libstore/profiles.cc 2 additions, 2 deletionssrc/libstore/profiles.cc
Loading
Please register or sign in to comment