Andrei Polushin
Andrei Polushin
I've prototyped another version of `direnv hook` that runs a user-defined function `direnv_postload` when the environment is just loaded. The function is executed in the context of current interactive shell,...
We should decide whether `direnv_postload`/`preunload` are worth implementing for all shells. To move forward, some additional feedback is desired.
Changing CMAKE_C_COMPILER variable shouldn't affect build, as Abseil is a C++ only library. Changing CMAKE_CXX_COMPILER variable doesn't change other CMake variables, so it's not the same as changing a toolchain....
Excuse me, may I come up with an example? ```cpp #include "absl/strings/str_cat.h" #include "absl/strings/str_join.h" #include "absl/log/log.h" template void log_info(Args&&... args) // A library function. { LOG(INFO)
Relying on `CMAKE_OSX_ARCHITECTURES` would be incorrect, the value of this variable is a list of architectures, not a single architecture. To compile with CMake, you might need add support for...
Looks like you can't set `CMAKE_SYSTEM_PROCESSOR` on a CMake command line, because it gets overwritten by CMake when it identifies a host toolchain. You might need to ask CMake community...
To enable IDE folders in CMake, you need to set [USE_FOLDERS](https://cmake.org/cmake/help/latest/prop_gbl/USE_FOLDERS.html) global property first: ```cmake set_property(GLOBAL PROPERTY USE_FOLDERS ON) ``` Then you normally have to set [CMAKE_FOLDER](https://cmake.org/cmake/help/latest/variable/CMAKE_FOLDER.html) before adding a...
You can try disabling `find_package` for Abseil after including it as as a subdirectory: ```cmake add_subdirectory(third_party/absl) # Disable subsequent find_package(absl) set(absl_FOUND TRUE) add_subdirectory(third_party/s2geometry) ``` If that doesn't help, you might...
I was trying to implement Python-style "defaultdict" (a.k.a Perl-style autovivification) pattern, having hard time realizing why the following code does not compile: ```dart var dictOfMapsOfLists = {}; dictOfMapsOfLists .putIfAbsent('foo', Map.new)...
Well, that might have further explained why `List.empty` cannot be used instead of `List.new`. That doesn't explain why the result of both `List.filled` and `List.empty` are *unmodifiable* by default, unlike...