#pragma once #include // Use either C++17 optional, or the standalone backwards compatible version #if (__cplusplus >= 201703L) # include #else # include #endif namespace pangolin { #if (__cplusplus >= 201703L) template using optional = std::optional; #else template using optional = std::experimental::optional; #endif }