<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/lldb/test/functionalities/data-formatter/data-formatter-python-synth/main.cpp, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>Move lldb/test to lldb/packages/Python/lldbsuite/test.</title>
<updated>2015-10-28T17:43:26+00:00</updated>
<author>
<name>Zachary Turner</name>
<email>zturner@google.com</email>
</author>
<published>2015-10-28T17:43:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c432c8f856e0bd84de980a9d9bb2d31b06fa95b1'/>
<id>c432c8f856e0bd84de980a9d9bb2d31b06fa95b1</id>
<content type='text'>
This is the conclusion of an effort to get LLDB's Python code
structured into a bona-fide Python package.  This has a number
of benefits, but most notably the ability to more easily share
Python code between different but related pieces of LLDB's Python
infrastructure (for example, `scripts` can now share code with
`test`).

llvm-svn: 251532
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is the conclusion of an effort to get LLDB's Python code
structured into a bona-fide Python package.  This has a number
of benefits, but most notably the ability to more easily share
Python code between different but related pieces of LLDB's Python
infrastructure (for example, `scripts` can now share code with
`test`).

llvm-svn: 251532
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix all the test case breakages caused by folks writing tests all over the place that depended explicitly </title>
<updated>2012-09-22T00:05:11+00:00</updated>
<author>
<name>Jim Ingham</name>
<email>jingham@apple.com</email>
</author>
<published>2012-09-22T00:05:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=63dfc725a7709feee23d9bf8969ccbdd04ce9c87'/>
<id>63dfc725a7709feee23d9bf8969ccbdd04ce9c87</id>
<content type='text'>
on the output of "break set".  Please don't do this sort of thing!!!!!

llvm-svn: 164433
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
on the output of "break set".  Please don't do this sort of thing!!!!!

llvm-svn: 164433
</pre>
</div>
</content>
</entry>
<entry>
<title>Massive enumeration name changes: a number of enums in ValueObject were not following the naming pattern</title>
<updated>2012-03-19T22:58:49+00:00</updated>
<author>
<name>Enrico Granata</name>
<email>egranata@apple.com</email>
</author>
<published>2012-03-19T22:58:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=86cc982974a5689047016981932a69a3987cf027'/>
<id>86cc982974a5689047016981932a69a3987cf027</id>
<content type='text'>
Changes to synthetic children:
 - the update(self): function can now (optionally) return a value - if it returns boolean value True, ValueObjectSyntheticFilter will not clear its caches across stop-points
   this should allow better performance for Python-based synthetic children when one can be sure that the child ValueObjects have not changed
 - making a difference between a synthetic VO and a VO with a synthetic value: now a ValueObjectSyntheticFilter will not return itself as its own synthetic value, but will (correctly)
   claim to itself be synthetic
 - cleared up the internal synthetic children architecture to make a more consistent use of pointers and references instead of shared pointers when possible
 - major cleanup of unnecessary #include, data and functions in ValueObjectSyntheticFilter itself
 - removed the SyntheticValueType enum and replaced it with a plain boolean (to which it was equivalent in the first place)
Some clean ups to the summary generation code
Centralized the code that clears out user-visible strings and data in ValueObject
More efficient summaries for libc++ containers

llvm-svn: 153061
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Changes to synthetic children:
 - the update(self): function can now (optionally) return a value - if it returns boolean value True, ValueObjectSyntheticFilter will not clear its caches across stop-points
   this should allow better performance for Python-based synthetic children when one can be sure that the child ValueObjects have not changed
 - making a difference between a synthetic VO and a VO with a synthetic value: now a ValueObjectSyntheticFilter will not return itself as its own synthetic value, but will (correctly)
   claim to itself be synthetic
 - cleared up the internal synthetic children architecture to make a more consistent use of pointers and references instead of shared pointers when possible
 - major cleanup of unnecessary #include, data and functions in ValueObjectSyntheticFilter itself
 - removed the SyntheticValueType enum and replaced it with a plain boolean (to which it was equivalent in the first place)
Some clean ups to the summary generation code
Centralized the code that clears out user-visible strings and data in ValueObject
More efficient summaries for libc++ containers

llvm-svn: 153061
</pre>
</div>
</content>
</entry>
<entry>
<title>Splitting test case for Python synthetic children: part 1 test is only testing the synthetic children feature itself. More test cases will be commited for individual STL containers</title>
<updated>2012-01-31T17:50:00+00:00</updated>
<author>
<name>Enrico Granata</name>
<email>granata.enrico@gmail.com</email>
</author>
<published>2012-01-31T17:50:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=56a27bb5fa309819a333d1d0807ab36dcd9dd193'/>
<id>56a27bb5fa309819a333d1d0807ab36dcd9dd193</id>
<content type='text'>
llvm-svn: 149393
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
llvm-svn: 149393
</pre>
</div>
</content>
</entry>
<entry>
<title>Option --regex (-x) now also works for synthetic children:</title>
<updated>2011-08-05T01:32:50+00:00</updated>
<author>
<name>Enrico Granata</name>
<email>granata.enrico@gmail.com</email>
</author>
<published>2011-08-05T01:32:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=f1af1ed6d2d56b4e9e7b2c4744ffdf104b9c37cb'/>
<id>f1af1ed6d2d56b4e9e7b2c4744ffdf104b9c37cb</id>
<content type='text'>
 - Added a test case in python-synth
Minor code improvements in categories, making them ready for adding new element types

llvm-svn: 136957
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - Added a test case in python-synth
Minor code improvements in categories, making them ready for adding new element types

llvm-svn: 136957
</pre>
</div>
</content>
</entry>
<entry>
<title>Public API changes:</title>
<updated>2011-07-29T19:53:35+00:00</updated>
<author>
<name>Enrico Granata</name>
<email>granata.enrico@gmail.com</email>
</author>
<published>2011-07-29T19:53:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=6f3533fb1d742620328b4fcc79410d3e09d6eb8d'/>
<id>6f3533fb1d742620328b4fcc79410d3e09d6eb8d</id>
<content type='text'>
 - Completely new implementation of SBType
 - Various enhancements in several other classes
Python synthetic children providers for std::vector&lt;T&gt;, std::list&lt;T&gt; and std::map&lt;K,V&gt;:
 - these return the actual elements into the container as the children of the container
 - basic template name parsing that works (hopefully) on both Clang and GCC
 - find them in examples/synthetic and in the test suite in functionalities/data-formatter/data-formatter-python-synth
New summary string token ${svar :
 - the syntax is just the same as in ${var but this new token lets you read the values
   coming from the synthetic children provider instead of the actual children
 - Python providers above provide a synthetic child len that returns the number of elements
   into the container
Full bug fix for the issue in which getting byte size for a non-complete type would crash LLDB
Several other fixes, including:
 - inverted the order of arguments in the ClangASTType constructor
 - EvaluationPoint now only returns SharedPointer's to Target and Process
 - the help text for several type subcommands now correctly indicates argument-less options as such

llvm-svn: 136504
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - Completely new implementation of SBType
 - Various enhancements in several other classes
Python synthetic children providers for std::vector&lt;T&gt;, std::list&lt;T&gt; and std::map&lt;K,V&gt;:
 - these return the actual elements into the container as the children of the container
 - basic template name parsing that works (hopefully) on both Clang and GCC
 - find them in examples/synthetic and in the test suite in functionalities/data-formatter/data-formatter-python-synth
New summary string token ${svar :
 - the syntax is just the same as in ${var but this new token lets you read the values
   coming from the synthetic children provider instead of the actual children
 - Python providers above provide a synthetic child len that returns the number of elements
   into the container
Full bug fix for the issue in which getting byte size for a non-complete type would crash LLDB
Several other fixes, including:
 - inverted the order of arguments in the ClangASTType constructor
 - EvaluationPoint now only returns SharedPointer's to Target and Process
 - the help text for several type subcommands now correctly indicates argument-less options as such

llvm-svn: 136504
</pre>
</div>
</content>
</entry>
<entry>
<title>Python synthetic children:</title>
<updated>2011-07-24T00:14:56+00:00</updated>
<author>
<name>Enrico Granata</name>
<email>granata.enrico@gmail.com</email>
</author>
<published>2011-07-24T00:14:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a37a065c3392ab52abd6a896ac1e95b4878cafad'/>
<id>a37a065c3392ab52abd6a896ac1e95b4878cafad</id>
<content type='text'>
 - you can now define a Python class as a synthetic children producer for a type
   the class must adhere to this "interface":
        def __init__(self, valobj, dict):
     	def get_child_at_index(self, index):
     	def get_child_index(self, name):
   then using type synth add -l className typeName
   (e.g. type synth add -l fooSynthProvider foo)
   (This is still WIP with lots to be added)
   A small test case is available also as reference

llvm-svn: 135865
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - you can now define a Python class as a synthetic children producer for a type
   the class must adhere to this "interface":
        def __init__(self, valobj, dict):
     	def get_child_at_index(self, index):
     	def get_child_index(self, name):
   then using type synth add -l className typeName
   (e.g. type synth add -l fooSynthProvider foo)
   (This is still WIP with lots to be added)
   A small test case is available also as reference

llvm-svn: 135865
</pre>
</div>
</content>
</entry>
</feed>
