wallace marked 2 inline comments as done.
wallace added inline comments.
================
Comment at: lldb/source/API/SBEnvironment.cpp:62-73
+ ConstString(std::next(m_opaque_up->begin(), index)->first())
+ .AsCString(""));
+}
+
+const char *SBEnvironment::GetValueAtIndex(size_t index) {
+ LLDB_RECORD_METHOD(const char *, SBEnvironment, GetValueAtIndex, (size_t),
+ index);
----------------
clayborg wrote:
> labath wrote:
> > I don't think these need to const-stringified now, given that they are
> > backed by the underlying map. We already have functions which return
> > pointers to internal objects (e.g. SBStream::GetData).
> >
> > @clayborg?
> That's a tough one. I would like to think that any "const char *" that comes
> back from an API that returns strings could just be pointer compared if
> needed. So I like the idea that for strings that comes out of the API that
> they are all const-ed and could easily be compared. I am fine with
> SBStream::GetData() returning its own string because _it_ owns the data. So I
> would vote to ConstString() any returned results
I'm adding a Clear method. With that, the backing char* might be wiped out and
the python reference to this string might be invalid unless we use ConstString
================
Comment at: lldb/source/API/SBEnvironment.cpp:80-81
+ overwrite);
+ if (overwrite || m_opaque_up->find(name) == m_opaque_up->end()) {
+ m_opaque_up->insert_or_assign(name, std::string(value));
+ return LLDB_RECORD_RESULT(true);
----------------
labath wrote:
> how about `if(overwrite) insert_or_assign(name, value) else try_emplace(name,
> value)`? (avoiding two map lookups)
teach me more
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D76111/new/
https://reviews.llvm.org/D76111
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits