Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:120612 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 55724 invoked from network); 17 Jun 2023 22:10:11 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 17 Jun 2023 22:10:11 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id F16D41804DF for ; Sat, 17 Jun 2023 15:10:09 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-oo1-f41.google.com (mail-oo1-f41.google.com [209.85.161.41]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sat, 17 Jun 2023 15:10:09 -0700 (PDT) Received: by mail-oo1-f41.google.com with SMTP id 006d021491bc7-559b0ddcd4aso1412736eaf.0 for ; Sat, 17 Jun 2023 15:10:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1687039808; x=1689631808; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=zYxlDgzFHVQQp4ZmMkgKV8GtAiYgFXLenQsoRlfSHLA=; b=Xjz1EE0icKTDFD/r1KkWkDqK9WOCEC9XP6omsoTlr/vyJIWURepMVZgqsC8yussGxX lhQSxt7cL+u+qovU/6XMQ/QPUgZiuhVSSL3crAugmxKuxorEjZAaYDBDafeHSkmL7n8S Nuf+d/5U10CWDp5jNmPVYMFee+6JGLLGgoycK2RrzfpsDfebfFlHe61oFxbknlCUTNvB JThMZGV/S8NMaYNiThZOpWY7SZTlAyB4v3U9tQWpliwpc90a634HGUrGRWc0V/htk7FH GvGn5QlqJb7HkulonibJchmNC+EsH3XuPRwvSloCjj/JMBxvzI6SiC4dl4EFfeNuY0D+ sNMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687039808; x=1689631808; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=zYxlDgzFHVQQp4ZmMkgKV8GtAiYgFXLenQsoRlfSHLA=; b=j5tWIueSSG5KmiDqOwv01SHH6g2YEPS3bSkTPyFM+xQ7g615e7gHgK2P7stDDm3yZm rxZJ16CuRsAp9OukZUZpQrzXU9BrLaaEoiCnmW9XbpCDKe59wS1cSEoJKuxMht/k+YyB PtoVQ0DHyoPelvE0DNC9K4bPlmzd0b3bt79OL37U3r5Jfdi8eYtZ23X/x0W/uhyZDaY1 8K74oBZxlbvJMujSNdtom3CEtdJfmrDVdbjafkDNHST8Mz5PrgRvLWLkkAVw9H2yEse7 IgG3awUQBaIGPdsSUSSV3ESr2+1ds0AlGwZclwX7FKtXVS80MAmLUtB3/dIsYkAJ6Iw6 Dx/Q== X-Gm-Message-State: AC+VfDy2e6rLSR2rVwrud5EvEwWGzTQDcaWn7U/wMQOKC0namSGX3M+b e6pzmUcmurj8SvgNI2ZQCqap3oL9NkJzhYDxjh4= X-Google-Smtp-Source: ACHHUZ7Vkbo4lw2/52YqaL1Pp6/i2iFyKGsZoko7Y09JMsl0gkQmkBqObY0wh+dum7K1j1j5R04T+Vo+wj75TuTw7hs= X-Received: by 2002:a4a:b502:0:b0:555:7682:7644 with SMTP id r2-20020a4ab502000000b0055576827644mr2958166ooo.2.1687039808520; Sat, 17 Jun 2023 15:10:08 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Sat, 17 Jun 2023 23:09:57 +0100 Message-ID: To: Levi Morrison Cc: PHP internals Content-Type: multipart/alternative; boundary="0000000000008247ef05fe5a9036" Subject: Re: [PHP-DEV] [RFC] Interface Default Methods From: davidgebler@gmail.com (David Gebler) --0000000000008247ef05fe5a9036 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Thu, Jun 15, 2023 at 4:48=E2=80=AFAM Levi Morrison via internals < internals@lists.php.net> wrote: > > I am moving my RFC for interface default methods to discussion: > https://wiki.php.net/rfc/interface-default-methods. > > Can I ask, the RFC doesn't say - does your implementation ensure default implementations can only call other methods which exist on the interface in the same manner as Java? i.e. the following would give some sort of error? interface A { public function foo(): void { $this->bar(); } } class B implements A { public function bar(): void { ... } } But the following would be okay? interface A { public function foo(): void { $this->bar(); } public function bar(): void; } --0000000000008247ef05fe5a9036--