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: Eric Blake
Subject: Re: [PATCH 03/25] qapi: New QAPISourceInfo, replacing dict
Date: Tue, 24 Sep 2019 14:12:27 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0

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?

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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