<feed xmlns='http://www.w3.org/2005/Atom'>
<title>suspect-devices/circuitpython/py/objstr.c, branch v1.7</title>
<subtitle>CircuitPython - a Python implementation for teaching coding with microcontrollers</subtitle>
<id>https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.7</id>
<link rel='self' href='https://git.suspectdevices.com/suspect-devices/circuitpython/atom?h=v1.7'/>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/'/>
<updated>2016-02-14T16:57:11+00:00</updated>
<entry>
<title>py/objarray: Implement "in" operator for bytearray.</title>
<updated>2016-02-14T16:57:11+00:00</updated>
<author>
<name>Paul Sokolovsky</name>
<email>pfalcon@users.sourceforge.net</email>
</author>
<published>2016-02-14T16:55:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=c38809e26b71c539584462c2d02b6cd2647ade5b'/>
<id>urn:sha1:c38809e26b71c539584462c2d02b6cd2647ade5b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py/objstr: Make mp_obj_str_format_helper static.</title>
<updated>2016-02-02T16:51:52+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-02-02T16:51:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=086d98cbde2dffe43c2879d15d2c419a1250008e'/>
<id>urn:sha1:086d98cbde2dffe43c2879d15d2c419a1250008e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py/objstr: For str.format, don't allocate on the heap for field name.</title>
<updated>2016-02-02T16:26:21+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-02-02T15:51:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=87e07ea9439cb4113f8425390f4a0f20861b5447'/>
<id>urn:sha1:87e07ea9439cb4113f8425390f4a0f20861b5447</id>
<content type='text'>
</content>
</entry>
<entry>
<title>py/objstr: For str.format, add nested/computed fields support.</title>
<updated>2016-02-02T16:25:24+00:00</updated>
<author>
<name>pohmelie</name>
<email>multisosnooley@gmail.com</email>
</author>
<published>2016-01-29T09:09:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=e3a29de1dc7649656228460caf72e7841440a373'/>
<id>urn:sha1:e3a29de1dc7649656228460caf72e7841440a373</id>
<content type='text'>
Eg: '{:{}}'.format(123, '&gt;20')

@pohmelie was the original author of this patch, but @dpgeorge made
significant changes to reduce code size and improve efficiency.
</content>
</entry>
<entry>
<title>py: Use new code pattern for parsing kw args with mp_arg_parse_all.</title>
<updated>2016-01-13T15:47:56+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-13T15:47:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=22d85ec5be77e7ee6b703221d51113f7f21a995b'/>
<id>urn:sha1:22d85ec5be77e7ee6b703221d51113f7f21a995b</id>
<content type='text'>
Makes code easier to read and more maintainable.
</content>
</entry>
<entry>
<title>py: Change first arg of type.make_new from mp_obj_t to mp_obj_type_t*.</title>
<updated>2016-01-11T00:49:27+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-03T15:55:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=5b3f0b7f39bd67cc9182993c288f09f67a0890df'/>
<id>urn:sha1:5b3f0b7f39bd67cc9182993c288f09f67a0890df</id>
<content type='text'>
The first argument to the type.make_new method is naturally a uPy type,
and all uses of this argument cast it directly to a pointer to a type
structure.  So it makes sense to just have it a pointer to a type from
the very beginning (and a const pointer at that).  This patch makes
such a change, and removes all unnecessary casting to/from mp_obj_t.
</content>
</entry>
<entry>
<title>py: Change type signature of builtin funs that take variable or kw args.</title>
<updated>2016-01-11T00:49:27+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-03T14:21:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=4b72b3a133ea87a1ef8b964508dc25c551ccf093'/>
<id>urn:sha1:4b72b3a133ea87a1ef8b964508dc25c551ccf093</id>
<content type='text'>
With this patch the n_args parameter is changed type from mp_uint_t to
size_t.
</content>
</entry>
<entry>
<title>py: Change type of .make_new and .call args: mp_uint_t becomes size_t.</title>
<updated>2016-01-11T00:48:41+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-03T09:59:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=a0c97814dfcb0debbde8be99539e3d5ca2334e54'/>
<id>urn:sha1:a0c97814dfcb0debbde8be99539e3d5ca2334e54</id>
<content type='text'>
This patch changes the type signature of .make_new and .call object method
slots to use size_t for n_args and n_kw (was mp_uint_t.  Makes code more
efficient when mp_uint_t is larger than a machine word.  Doesn't affect
ports when size_t and mp_uint_t have the same size.
</content>
</entry>
<entry>
<title>py/objstr: In str.format, handle case of no format spec for string arg.</title>
<updated>2016-01-04T13:13:39+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-04T13:13:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=d4df8f4925ae6e4875b521f1c35571f0b51e405a'/>
<id>urn:sha1:d4df8f4925ae6e4875b521f1c35571f0b51e405a</id>
<content type='text'>
Handles, eg, "{:&gt;20}".format("foo"), where there is no explicit spec for
the type of the argument.
</content>
</entry>
<entry>
<title>py: Use polymorphic iterator type where possible to reduce code size.</title>
<updated>2016-01-03T16:27:55+00:00</updated>
<author>
<name>Damien George</name>
<email>damien.p.george@gmail.com</email>
</author>
<published>2016-01-03T16:27:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.suspectdevices.com/suspect-devices/circuitpython/commit/?id=8212d97317b6e0c23c49a4ea34dbdb957f380789'/>
<id>urn:sha1:8212d97317b6e0c23c49a4ea34dbdb957f380789</id>
<content type='text'>
Only types whose iterator instances still fit in 4 machine words have
been changed to use the polymorphic iterator.

Reduces Thumb2 arch code size by 264 bytes.
</content>
</entry>
</feed>
