qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 03/25] qapi: New QAPISourceInfo, replacing dict


From: Markus Armbruster
Subject: Re: [PATCH 03/25] qapi: New QAPISourceInfo, replacing dict
Date: Wed, 25 Sep 2019 08:40:52 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux)

Eric Blake <address@hidden> writes:

> On 9/24/19 8:28 AM, Markus Armbruster wrote:
>> We track source locations with a dict of the form
>> 
>>     {'file': FNAME, 'line': LINENO, parent': PARENT}
>> 
>> where PARENT is None for the main file, and the include directive's
>> source location for included files.
>> 
>> This is servicable enough, but the next commit will add information,
>> and that's going to come out cleaner if we turn this into a class.  So
>> do that.
>> 
>> Signed-off-by: Markus Armbruster <address@hidden>
>> ---
>
>>  class QAPIError(Exception):
>> -    def __init__(self, fname, line, col, incl_info, msg):
>> +    def __init__(self, info, col, msg):
>>          Exception.__init__(self)
>
> Unrelated to this patch, but I just noticed
> https://docs.quantifiedcode.com/python-anti-patterns/ today (in part
> based on my question on another patch about using 'list.get(key, False)'
> rather than 'key in list and list[key]').  In particular, I found
> https://docs.quantifiedcode.com/python-anti-patterns/correctness/missing_argument_to_super.html
> which recommends using:
>
> def __init__(...):
>     super(QAPIError, self).__init__()
>
> (because of Python 2), while other sits state that with python 3, you
> can further get away with:
>
> def __init__(...):
>     super().__init(...)
>
> Should we be switching our code base to use super() in more places,
> rather than hard-coding the parent class name?

I intend to switch to super() in a future 'bye Python 2' series.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]