[Lldb-commits] [lldb] r153541 - in /lldb/trunk: examples/summaries/cocoa/objc_runtime.py scripts/Python/finish-swig-Python-LLDB.sh source/Core/FormatManager.cpp source/Interpreter/ScriptInterpreterPython.cpp test/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjC.py test/functionalities/data-formatter/data-formatter-objc/main.m

Sean Callanan scallanan at apple.com
Tue Mar 27 19:14:53 PDT 2012


Enrico,

I'm pretty sure you meant to include Class.py.

Sean

On Mar 27, 2012, at 2:49 PM, Enrico Granata wrote:

> Author: enrico
> Date: Tue Mar 27 16:49:20 2012
> New Revision: 153541
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=153541&view=rev
> Log:
> adding a summary for Objective-C type 'Class'
> 
> Modified:
>    lldb/trunk/examples/summaries/cocoa/objc_runtime.py
>    lldb/trunk/scripts/Python/finish-swig-Python-LLDB.sh
>    lldb/trunk/source/Core/FormatManager.cpp
>    lldb/trunk/source/Interpreter/ScriptInterpreterPython.cpp
>    lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjC.py
>    lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/main.m
> 
> Modified: lldb/trunk/examples/summaries/cocoa/objc_runtime.py
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/examples/summaries/cocoa/objc_runtime.py?rev=153541&r1=153540&r2=153541&view=diff
> ==============================================================================
> --- lldb/trunk/examples/summaries/cocoa/objc_runtime.py (original)
> +++ lldb/trunk/examples/summaries/cocoa/objc_runtime.py Tue Mar 27 16:49:20 2012
> @@ -593,6 +593,12 @@
> 			return 1
> 		return 2
> 
> +	@staticmethod
> +	def runtime_from_isa(isa):
> +		runtime = ObjCRuntime(isa)
> +		runtime.isa = isa
> +		return runtime
> +
> 	def __init__(self,valobj):
> 		self.valobj = valobj
> 		self.adjust_for_architecture()
> 
> Modified: lldb/trunk/scripts/Python/finish-swig-Python-LLDB.sh
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/scripts/Python/finish-swig-Python-LLDB.sh?rev=153541&r1=153540&r2=153541&view=diff
> ==============================================================================
> --- lldb/trunk/scripts/Python/finish-swig-Python-LLDB.sh (original)
> +++ lldb/trunk/scripts/Python/finish-swig-Python-LLDB.sh Tue Mar 27 16:49:20 2012
> @@ -452,6 +452,20 @@
>     fi
> fi
> 
> +if [ -f "${SRC_ROOT}/examples/summaries/cocoa/Class.py" ]
> +then
> +    if [ $Debug == 1 ]
> +    then
> +        echo "Copying Class.py to ${framework_python_dir}"
> +    fi
> +    cp "${SRC_ROOT}/examples/summaries/cocoa/Class.py" "${framework_python_dir}"
> +else
> +    if [ $Debug == 1 ]
> +    then
> +        echo "Unable to find ${SRC_ROOT}/examples/summaries/cocoa/Class.py"
> +    fi
> +fi
> +
> if [ -f "${SRC_ROOT}/examples/summaries/cocoa/cache.py" ]
> then
>     if [ $Debug == 1 ]
> 
> Modified: lldb/trunk/source/Core/FormatManager.cpp
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Core/FormatManager.cpp?rev=153541&r1=153540&r2=153541&view=diff
> ==============================================================================
> --- lldb/trunk/source/Core/FormatManager.cpp (original)
> +++ lldb/trunk/source/Core/FormatManager.cpp Tue Mar 27 16:49:20 2012
> @@ -796,6 +796,7 @@
>     AddScriptSummary(objc_category_sp, "Selector.SEL_Summary", ConstString("struct objc_selector"), objc_flags);
>     AddScriptSummary(objc_category_sp, "Selector.SEL_Summary", ConstString("objc_selector"), objc_flags);
>     AddScriptSummary(objc_category_sp, "Selector.SELPointer_Summary", ConstString("objc_selector *"), objc_flags);
> +    AddScriptSummary(objc_category_sp, "Class.Class_Summary", ConstString("Class"), objc_flags);
>     objc_flags.SetSkipPointers(false);
> 
>     TypeCategoryImpl::SharedPointer corefoundation_category_sp = GetCategory(m_corefoundation_category_name);
> 
> Modified: lldb/trunk/source/Interpreter/ScriptInterpreterPython.cpp
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Interpreter/ScriptInterpreterPython.cpp?rev=153541&r1=153540&r2=153541&view=diff
> ==============================================================================
> --- lldb/trunk/source/Interpreter/ScriptInterpreterPython.cpp (original)
> +++ lldb/trunk/source/Interpreter/ScriptInterpreterPython.cpp Tue Mar 27 16:49:20 2012
> @@ -303,7 +303,7 @@
>     // WARNING: temporary code that loads Cocoa formatters - this should be done on a per-platform basis rather than loading the whole set
>     // and letting the individual formatter classes exploit APIs to check whether they can/cannot do their task
>     run_string.Clear();
> -    run_string.Printf ("run_one_line (%s, 'import CFString, CFArray, CFDictionary, NSData, NSMachPort, NSSet, NSNotification, NSException, CFBag, CFBinaryHeap, NSURL, NSBundle, NSNumber, NSDate, NSIndexSet, Selector, CFBitVector')", m_dictionary_name.c_str());
> +    run_string.Printf ("run_one_line (%s, 'import CFString, CFArray, CFDictionary, NSData, NSMachPort, NSSet, NSNotification, NSException, CFBag, CFBinaryHeap, NSURL, NSBundle, NSNumber, NSDate, NSIndexSet, Selector, Class, CFBitVector')", m_dictionary_name.c_str());
>     PyRun_SimpleString (run_string.GetData());
> 
>     int new_count = Debugger::TestDebuggerRefCount();
> 
> Modified: lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjC.py
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjC.py?rev=153541&r1=153540&r2=153541&view=diff
> ==============================================================================
> --- lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjC.py (original)
> +++ lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/TestDataFormatterObjC.py Tue Mar 27 16:49:20 2012
> @@ -297,6 +297,20 @@
>                     '@"Europe/Paris"'])
> 
> 
> +        self.runCmd('type category list')
> +        self.runCmd('type summary list')
> +        self.expect('frame variable myclass',
> +                    substrs = ['(Class) myclass = NSValue'])
> +        self.expect('frame variable myclass2',
> +                    substrs = ['(Class) myclass2 = __NSCFConstantString'])
> +        self.expect('frame variable myclass3',
> +                    substrs = ['(Class) myclass3 = Molecule'])
> +        self.expect('frame variable myclass4',
> +                    substrs = ['(Class) myclass4 = NSMutableArray'])
> +        self.expect('frame variable myclass5',
> +                    substrs = ['(Class) myclass5 = <error: unknown Class>'])
> +
> +
>     def expr_objc_data_formatter_commands(self):
>         """Test common cases of expression parser <--> formatters interaction."""
>         self.runCmd("file a.out", CURRENT_EXECUTABLE_SET)
> 
> Modified: lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/main.m
> URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/main.m?rev=153541&r1=153540&r2=153541&view=diff
> ==============================================================================
> --- lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/main.m (original)
> +++ lldb/trunk/test/functionalities/data-formatter/data-formatter-objc/main.m Tue Mar 27 16:49:20 2012
> @@ -631,6 +631,12 @@
> 
> 	Molecule *molecule = [Molecule new];
> 
> +	Class myclass = NSClassFromString(@"NSValue");
> +	Class myclass2 = [str0 class];
> +	Class myclass3 = [molecule class];
> +	Class myclass4 = NSClassFromString(@"NSMutableArray");
> +	Class myclass5 = [nil class];
> +
>     // Set break point at this line.
> 
>     [molecule addObserver:[My_KVO_Observer new] forKeyPath:@"atoms" options:0 context:NULL];
> 
> 
> _______________________________________________
> lldb-commits mailing list
> lldb-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/lldb-commits




More information about the lldb-commits mailing list