<p>In <a href="https://github.com/geany/geany/pull/957#discussion_r62038038">tagmanager/src/tm_source_file.c</a>:</p>
<pre style='color:#555'>> @@ -109,6 +109,35 @@ gchar *tm_get_real_path(const gchar *file_name)
>    return NULL;
>  }
>  
> +/* add argument list of __init__() Python methods to the class tag */
> +static void update_python_arglist(const TMTag *tag)
</pre>
<p>uctags doesn't do (and in fact cannot do) anything - it was added by Enrico in <a href="https://github.com/geany/geany/commit/1932d3fae938a21c1a0b22c4ae205f63f8ff8d0c" class="commit-link"><tt>1932d3f</tt></a>. The purpose of it is for:</p>

<pre><code>class Foo:
    def __init__(self, bar, baz):
        pass
</code></pre>

<p>to use the tag for its <strong>init</strong>() and copy its argument list to the tag of Foo so when you type</p>

<pre><code>a = Foo(
</code></pre>

<p>you get completion based on the Foo's <strong>init</strong>(). Thing like that cannot be done in uctags because at the time <strong>init</strong>() is parsed, the Foo tag is already written to disk and cannot be modified to include the arguments of <strong>init</strong>().</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly or <a href="https://github.com/geany/geany/pull/957/files/f61a64be29cbba0162f92eb5c1fe4aa2af33fd33#r62038038">view it on GitHub</a><img alt="" height="1" src="https://github.com/notifications/beacon/ABDrJ0hJeOyZy-kzx8pZ9YxwCY69CXh0ks5p-J8sgaJpZM4Ht-Ad.gif" width="1" /></p>
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
  <link itemprop="url" href="https://github.com/geany/geany/pull/957/files/f61a64be29cbba0162f92eb5c1fe4aa2af33fd33#r62038038"></link>
  <meta itemprop="name" content="View Pull Request"></meta>
</div>
<meta itemprop="description" content="View this Pull Request on GitHub"></meta>
</div>