File tree 1 file changed +11
-0
lines changed 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -72,6 +72,17 @@ building the LLDB framework for macOS, the headers are processed with
72
72
``unifdef `` prior to being copied into the framework bundle to remove macros
73
73
involving SWIG.
74
74
75
+ Another good principle when adding SB API methods is: if you find yourself
76
+ implementing a significant algorithm in the SB API method, you should not do
77
+ that, but instead look for and then add it - if not found - as a method in the
78
+ underlying lldb_private class, and then call that from your SB API method.
79
+ If it was a useful algorithm, it's very likely it already exists
80
+ because the lldb_private code also needed to do it. And if it doesn't at
81
+ present, if it was a useful thing to do, it's likely someone will later need
82
+ it in lldb_private and then we end up with two implementations of the same
83
+ algorithm. If we keep the SB API code to just what's needed to manage the SB
84
+ objects and requests, we won't get into this situation.
85
+
75
86
Lifetime
76
87
--------
77
88
Many SB API methods will return strings in the form of ``const char * `` values.
You can’t perform that action at this time.
0 commit comments