<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/eval, branch v0.1.5</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>eval: Also make clear_tv non-recursive</title>
<updated>2016-06-24T13:53:26+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-05-09T17:04:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=f2f9ab6f3578447a1c30988f5e9930a655277202'/>
<id>f2f9ab6f3578447a1c30988f5e9930a655277202</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>kvec,typval_encode: Add new vector: the one with preallocated array</title>
<updated>2016-06-24T13:53:26+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-05-01T03:27:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=e07da3a71ba2586b0919ba4517de6e5b056f3b37'/>
<id>e07da3a71ba2586b0919ba4517de6e5b056f3b37</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>api/helpers: Use typval_encode.h for vim_to_object</title>
<updated>2016-06-24T13:53:26+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-04-18T12:55:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=da15b5c1f3230b127ebdbe52d449d1ee8104b2ae'/>
<id>da15b5c1f3230b127ebdbe52d449d1ee8104b2ae</id>
<content type='text'>
This ought to prevent stack overflow, but I do not see this actually working:
*lua* code crashes with stack overflow when trying to deserialize msgpack from
Neovim, Neovim is fine even if nesting level is increased 100x (though test
becomes very slow); not sure how recursive function may survive this. So it
looks like there are currently only two positive effects:

1. NULL lists are returned as empty (#4596).
2. Functional tests are slightly more fast. Very slightly. Checked for Release
   build for test/functional/eval tests because benchmarking of debug mode is
   not very useful.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This ought to prevent stack overflow, but I do not see this actually working:
*lua* code crashes with stack overflow when trying to deserialize msgpack from
Neovim, Neovim is fine even if nesting level is increased 100x (though test
becomes very slow); not sure how recursive function may survive this. So it
looks like there are currently only two positive effects:

1. NULL lists are returned as empty (#4596).
2. Functional tests are slightly more fast. Very slightly. Checked for Release
   build for test/functional/eval tests because benchmarking of debug mode is
   not very useful.
</pre>
</div>
</content>
</entry>
<entry>
<title>typval_encode: Do not use new vector type</title>
<updated>2016-05-30T20:35:22+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-05-01T03:29:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=8f8b6658d74429ef62e5a91afdc75339929af1de'/>
<id>8f8b6658d74429ef62e5a91afdc75339929af1de</id>
<content type='text'>
For string() it looks like no optimization, sometimes performance is even worse. 
Since it was designed to avoid heap allocations in clear_tv let’s see whether it 
will make any difference once clear_tv uses typval_encode to avoid stack 
overflow in the disabled test.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For string() it looks like no optimization, sometimes performance is even worse. 
Since it was designed to avoid heap allocations in clear_tv let’s see whether it 
will make any difference once clear_tv uses typval_encode to avoid stack 
overflow in the disabled test.</pre>
</div>
</content>
</entry>
<entry>
<title>kvec,typval_encode: Add new vector: the one with preallocated array</title>
<updated>2016-05-30T20:34:28+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-05-01T03:27:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d9137b1a3aca67072aac7c020658278a9334640a'/>
<id>d9137b1a3aca67072aac7c020658278a9334640a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>eval/encode: Move main macros from encode.c to typval_encode.h</title>
<updated>2016-05-30T20:31:17+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-04-18T02:04:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=139c1bb48b3754533e1766f2e80b0f0af42172e2'/>
<id>139c1bb48b3754533e1766f2e80b0f0af42172e2</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>lib/kvec: Do not use kv_init unless needed</title>
<updated>2016-05-30T18:19:52+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-05-01T02:10:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=d007c2977bada0db7fa1da6748ba33a7cd33bb86'/>
<id>d007c2977bada0db7fa1da6748ba33a7cd33bb86</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>lib/kvec: Remove useless type argument from kv_push macros</title>
<updated>2016-05-30T18:14:39+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-05-01T01:53:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=8cfb272c74b760c5c6224bc7b73358d982e117ab'/>
<id>8cfb272c74b760c5c6224bc7b73358d982e117ab</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>eval/encode: Simplify loop in encode_list_write</title>
<updated>2016-04-17T23:48:20+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-04-04T01:58:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=45304b482cbeae01af3a89358d96b0d1511213c3'/>
<id>45304b482cbeae01af3a89358d96b0d1511213c3</id>
<content type='text'>
Patch made up by oni-link.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Patch made up by oni-link.</pre>
</div>
</content>
</entry>
<entry>
<title>eval/encode: Make sure that encoder can encode NULL variables</title>
<updated>2016-04-17T23:48:20+00:00</updated>
<author>
<name>ZyX</name>
<email>kp-pav@yandex.ru</email>
</author>
<published>2016-04-04T01:53:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=bda0165514a582978c2da672b528562df78a2d1a'/>
<id>bda0165514a582978c2da672b528562df78a2d1a</id>
<content type='text'>
Adds two undocumented v: variables: _null_list and _null_dict because I do not 
know a reproducible way to get such lists (though I think I heard about this) 
and dictionaries (do not remember hearing about them). NULL strings are obtained 
using $XXX_UNEXISTENT_VAR_XXX.

Fixes crash in json_encode($XXX_UNEXISTENT_VAR_XXX). Other added tests worked 
fine before this commit.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds two undocumented v: variables: _null_list and _null_dict because I do not 
know a reproducible way to get such lists (though I think I heard about this) 
and dictionaries (do not remember hearing about them). NULL strings are obtained 
using $XXX_UNEXISTENT_VAR_XXX.

Fixes crash in json_encode($XXX_UNEXISTENT_VAR_XXX). Other added tests worked 
fine before this commit.</pre>
</div>
</content>
</entry>
</feed>
