Hi, I'd like to change the third API from
RecErrT RecGetRecordString(const char *name, char *buf, int buf_len, bool lock = true); to std::optional<std::string_view> RecGetRecordString(const char *name, char *buf, int buf_len, bool lock = true); as suggested by https://github.com/apache/trafficserver/pull/12060#issuecomment-2764549662 2025年3月30日(日) 21:18 Hiroaki Nakamura <hnaka...@gmail.com>: > > Hi, I'd like to propose new APIs for record reading functions which > return std::optional<T>. > > std::optional<RecInt> RecGetRecordInt(const char *name, bool lock = > true); > std::optional<RecFloat> RecGetRecordFloat(const char *name, bool > lock = true); > RecErrT RecGetRecordString(const char *name, char > *buf, int buf_len, bool lock = true); > std::optional<std::string> RecGetRecordStringAlloc(const char *name, > bool lock = true); > std::optional<RecCounter> RecGetRecordCounter(const char *name, bool > lock = true); > > std::optional::has_value() for the result returns true if the value is > found or false otherwise. > The third API is unmodified from the current API. > > The prerequisite for these APIs is to prohibit using nullptr as the > default value of string records. > Therefore we need to change the default value of > proxy.config.diags.action.tags > from nullptr to an empty string "". > > For details, please take a look at > https://github.com/apache/trafficserver/pull/12060#issuecomment-2763533666 > and the comments above it. > > I would appreciate any feedback on this proposal. > Thanks, > > -- > )Hioraki Nakamura) hnaka...@gmail.com