Message ID | 20240313044127.49089-15-jsnow@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show
Return-Path: <qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 932E7C54E58 for <qemu-devel@archiver.kernel.org>; Wed, 13 Mar 2024 04:45:41 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1rkGRG-00082k-OQ; Wed, 13 Mar 2024 00:42:02 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <jsnow@redhat.com>) id 1rkGQx-0007vP-LA for qemu-devel@nongnu.org; Wed, 13 Mar 2024 00:41:44 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <jsnow@redhat.com>) id 1rkGQs-0001rm-GJ for qemu-devel@nongnu.org; Wed, 13 Mar 2024 00:41:43 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1710304897; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=DbHP73B2mtfkEhWK170YnmX6bUMcBxSm9VcnBgUTU2k=; b=HV9nwkRoh+UENK35QRj5mDUchOR7JVyU5TDWQuPyGl3aTRO0e6G17SGVHHDfaBK/oKMPVn jA13UoZgJl5acdMvqonIhhj1xyvCBiuPh4ucj1jsUTOzATHtoFC1gQWBbhlgmnQ5/IuCxW YIwa+TqpkdEZKzsK+OvtBZ4lilMJg2o= Received: from mimecast-mx02.redhat.com (mx-ext.redhat.com [66.187.233.73]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-558-TbqmcWdJONCMMTZoDeUzLg-1; Wed, 13 Mar 2024 00:41:33 -0400 X-MC-Unique: TbqmcWdJONCMMTZoDeUzLg-1 Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.rdu2.redhat.com [10.11.54.5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mimecast-mx02.redhat.com (Postfix) with ESMTPS id 7D824380213A; Wed, 13 Mar 2024 04:41:33 +0000 (UTC) Received: from scv.redhat.com (unknown [10.22.16.65]) by smtp.corp.redhat.com (Postfix) with ESMTP id 4195F111E5; Wed, 13 Mar 2024 04:41:33 +0000 (UTC) From: John Snow <jsnow@redhat.com> To: qemu-devel@nongnu.org Cc: Peter Maydell <peter.maydell@linaro.org>, Michael Roth <michael.roth@amd.com>, Markus Armbruster <armbru@redhat.com>, John Snow <jsnow@redhat.com> Subject: [PATCH v4 14/23] qapi/schema: assert info is present when necessary Date: Wed, 13 Mar 2024 00:41:18 -0400 Message-ID: <20240313044127.49089-15-jsnow@redhat.com> In-Reply-To: <20240313044127.49089-1-jsnow@redhat.com> References: <20240313044127.49089-1-jsnow@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 3.4.1 on 10.11.54.5 Received-SPF: pass client-ip=170.10.133.124; envelope-from=jsnow@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.687, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=subscribe> Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org |
Series |
qapi: statically type schema.py
|
expand
|
diff --git a/scripts/qapi/schema.py b/scripts/qapi/schema.py index 22e065fc13d..d514b3c28f6 100644 --- a/scripts/qapi/schema.py +++ b/scripts/qapi/schema.py @@ -750,6 +750,7 @@ def describe(self, info): else: assert False + assert info is not None if defined_in != info.defn_name: return "%s '%s' of %s '%s'" % (role, self.name, meta, defined_in) return "%s '%s'" % (role, self.name) @@ -840,6 +841,7 @@ def __init__(self, name, info, doc, ifcond, features, self.coroutine = coroutine def check(self, schema): + assert self.info is not None super().check(schema) if self._arg_type_name: arg_type = schema.resolve_type(
QAPISchemaInfo arguments can often be None because built-in definitions don't have such information. The type hint can only be Optional[QAPISchemaInfo] then. But, mypy gets upset about all the places where we exploit that it can't actually be None there. Add assertions that will help mypy over the hump, to enable adding type hints in a forthcoming commit. Signed-off-by: John Snow <jsnow@redhat.com> --- scripts/qapi/schema.py | 2 ++ 1 file changed, 2 insertions(+)