Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:108972 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 13676 invoked from network); 11 Mar 2020 11:36:30 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 11 Mar 2020 11:36:30 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 7ED0E1804F3 for ; Wed, 11 Mar 2020 02:57:37 -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,SPF_HELO_NONE,SPF_PASS 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-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 11 Mar 2020 02:57:37 -0700 (PDT) Received: by mail-lf1-f54.google.com with SMTP id j11so1156793lfg.4 for ; Wed, 11 Mar 2020 02:57:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=2Pwueqq0Y7zg8GXsNUGeTedmBHjj66v40eFwMKfK8nw=; b=L3pTaZ0hnGKN3dNtpsZE2e4rRr7IRTrfbKL+PbZ/QhmssMKmN3LFTnEZ6Ro0R/AHy0 xGlVloEmh58ZuUoGwDOh4w5NkJY48HR0CPQEb+py88w3Y5WINDmw/EAoDhf4hCXkGVwl dMePAsFJLsDyIOEA5O6dcuAepZ52kpVGTE/AxLyfhxvfCSypo+roXb1tLx2gVSTEWi/e SHy5+r2OKdBYcZW25rAWatOrtwuREi/9+CdTF/FZ+Jwqq2Fuw71tJMSMbCLFSW/v8wYC NIY1PJ7oYFQLQI0bwyuemj8CGZXiHZSzEAvzoBHwCqjKzsRVgFzfbrL+EYv/VszPNxaa igjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=2Pwueqq0Y7zg8GXsNUGeTedmBHjj66v40eFwMKfK8nw=; b=BtLekU02hHhRiw+nzRV3N2bWjruOVJWZZym1mBRGjZ3nYUzclILvI0v1vzQ8DK1NoK q1Nb1h5IdD7MutXT2unNmQPCWz7jYCSRtrjaXU9WOimzO9yLwPVz0P/iDSehdehDRPv/ U1GZMX0Uus3VYGocPjfmARNvNT9ZeQNr5wFtfaazGcGgVSxfCU+7+2deZUGxOs7Ra+Gp 9Wuj9FkDUUHaTY16D/1YuL0aZGYzVkNkVcloKL1yDEZGkZC2kYZE4YV9szTIHdCrvYoS uuAgAjY/VOeR6nZ0ZlG7F6u9jk4XPiKYz3yYM+Paq0IJGcRkMDKSWSy3K/fFOJzGbuDR ZRbg== X-Gm-Message-State: ANhLgQ14HD92rnHBD7Hvoq3/fhtENn63+uNSsemjrZvb5O+NBEEb9wlp eikyCvXMyRYyyFq8vPk6ph9M5VkRXYliNoxaJalh9kUX0pk= X-Google-Smtp-Source: ADFU+vu4Qs2N3JhGVsdorysukpdJLhsFAYiSErkkPyuIkBSWpyxO/zcujAPeBHmeLKK0bczLSCI0FkM4w/8ZLveCKYM= X-Received: by 2002:ac2:489c:: with SMTP id x28mr879628lfc.190.1583920652656; Wed, 11 Mar 2020 02:57:32 -0700 (PDT) MIME-Version: 1.0 References: <1715830.3Z3xILz1Hf@mcmic-probook> <8165930.V9hoPP6r1K@mcmic-probook> In-Reply-To: <8165930.V9hoPP6r1K@mcmic-probook> Date: Wed, 11 Mar 2020 10:57:16 +0100 Message-ID: To: =?UTF-8?Q?C=C3=B4me_Chilliet?= Cc: PHP internals Content-Type: multipart/alternative; boundary="000000000000daa5df05a09143d4" Subject: Re: [PHP-DEV] [VOTE] Object-based token_get_all() alternative From: nikita.ppv@gmail.com (Nikita Popov) --000000000000daa5df05a09143d4 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Mar 10, 2020 at 5:19 PM C=C3=B4me Chilliet < come.chilliet@fusiondirectory.org> wrote: > Le mardi 10 mars 2020, 15:53:41 CET Nikita Popov a =C3=A9crit : > > Would __toString() return $token->text? I'm not strictly opposed to thi= s, > > but I'd be hard pressed to think of a situation where I would prefer > > writing (string) $token over $token->text. Generally, the less magic th= e > > better :) > > My idea was that since tokens are parsed from a string it should be easy > to write a string back with them. > I do not have an obvious usecase but the idea is doing stuff like > > if ($token.is('function')) { > echo "public $token"; > } else { > echo $token; > } > > Am I right to assume that with __toString the same as ->text we=E2=80=99d= have > implode('', PhpToken::getAll($code)) =3D=3D $code ? > > This would allow: > $tokens =3D PhpToken::getAll($code); > // Modifications on $tokens > $code =3D implode('', $tokens); > Yes, that would work. It's not much harder without __toString though: $code =3D implode(array_column($tokens, 'text')); Does anyone else have thoughts on whether PhpToken should implement __toString() or not? Nikita --000000000000daa5df05a09143d4--