I'm not arguing for this, but you could do a fairly straightforward API like:

SBValue
SBValue::CallMethod(const char *methodName, SBValueList arguments);

This would only work if the SBValue was a C++ or ObjC object.  In the ObjC case 
"methodName" would be the selector, and the value list would have to be in 
parameter order.  

I can see this being useful, though probably under the covers it would take 
some work to get it right...

Jim

On Feb 22, 2013, at 11:51 AM, Filipe Cabecinhas <[email protected]> 
wrote:

> I also don't think it should be in the SB layer. There's lots of stuff to 
> deal with (arguments and their types, variable arguments selectors/functions, 
> etc). I think creating an expression is better (maybe we can use clang so one 
> doesn't have to generate an expression string?).
> 
> Regards,
> 
>   filipe
> 
> 
> On Fri, Feb 22, 2013 at 10:23 AM, Enrico Granata <[email protected]> wrote:
> Currently, no.
> You would have to craft your own expression and run it.
> 
> The C++ data formatters have their own helper functions to do so. You can 
> refer to lldb_private::formatters::ExtractValueFromObjCExpression for an 
> example.
> 
> I am not sure if this kind of API belongs in the SB layer. Ideas?
> 
> Enrico Granata
> ✉ egranata@.com
> ✆ 27683
> 
> On Feb 22, 2013, at 5:29 AM, Carlo Kok <[email protected]> wrote:
> 
>> Does the api expose any way to execute an objc selector a given value 
>> (SBValue)?  (for example I have an NSException instance in an SBValue, and 
>> want to call "name" on it).
>> 
>> 
>> What about global (c) functions?
>> 
>> 
>> If not the api, how can I do the equivalent with the underlying api?
>> 
>> 
>> Thanks,
>> --
>> 
>> Carlo Kok
>> 
>> 
>> _______________________________________________
>> lldb-dev mailing list
>> [email protected]
>> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> 
> 
> _______________________________________________
> lldb-dev mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev
> 
> 
> _______________________________________________
> lldb-dev mailing list
> [email protected]
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev


_______________________________________________
lldb-dev mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to