John Snow <js...@redhat.com> writes:

> These methods should always return a str, it's only the default abstract
> implementation that doesn't. They can be marked "abstract" by raising
> NotImplementedError(), which requires subclasses to override the method
> with the proper return type.
>
> Signed-off-by: John Snow <js...@redhat.com>
> ---
>  scripts/qapi/schema.py | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py
> index c5fdd625452..4600a566005 100644
> --- a/scripts/qapi/schema.py
> +++ b/scripts/qapi/schema.py
> @@ -233,8 +233,8 @@ def visit(self, visitor):
>  class QAPISchemaType(QAPISchemaEntity):
>      # Return the C type for common use.
>      # For the types we commonly box, this is a pointer type.
> -    def c_type(self):
> -        pass
> +    def c_type(self) -> str:
> +        raise NotImplementedError()
>  
>      # Return the C type to be used in a parameter list.
>      def c_param_type(self):
> @@ -244,8 +244,8 @@ def c_param_type(self):
>      def c_unboxed_type(self):
>          return self.c_type()
>  
> -    def json_type(self):
> -        pass
> +    def json_type(self) -> str:
> +        raise NotImplementedError()
>  
>      def alternate_qtype(self):
>          json2qtype = {

I wish abstract methods could be done in a more concise way.


Reply via email to