qemu-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 08/12] qapi/schema: make QAPISourceInfo mandatory


From: John Snow
Subject: Re: [PATCH 08/12] qapi/schema: make QAPISourceInfo mandatory
Date: Fri, 18 Dec 2020 16:30:31 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1

On 12/18/20 3:57 PM, Markus Armbruster wrote:
John Snow <jsnow@redhat.com> writes:

On 12/18/20 12:24 AM, Markus Armbruster wrote:
I could conceivably use source line information and stuff, to be
needlessly fancy about it. Nah. I just think singleton patterns are kind
of weird to implement in Python, so I didn't.
Stupidest singleton that could possibly work: in __init__,
self.singleton = ...


Yeah, you can make a class variable that has a builtin singleton, then
make the class method return that class variable.

Feels fancier than my laziness permits. I just put it back to using
one copy per definition.

Why have a class method around the attribute?  Just use the stoopid
attribute already ;-P


Something has to initialize it:

```
class Blah:
    magic = Blah()

    def __init__(self):
        pass
```

Won't work; Blah isn't defined yet. a classmethod works though:

```
class Blah:
    magic = None

    def __init__(self) -> None:
        pass

    @classmethod
    def make(cls) -> 'Blah':
        if cls.magic is None:
            cls.magic = cls()
        return cls.magic
```




reply via email to

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