php / php/php-src

First class callable syntax for instance methods

Offen
#23,093 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Feature Status: Requires RFC
Vorherrschende Sprache
C
Sterne
40.4k
Forks
8.1k
Ø Merge
2 T. 13 Std.
Gemergte PRs (30 T.)
96

Beschreibung

Description

Consider the following code:

class Booking
{
    public function getFreeCancellationDeadline(): ?\DateTimeImmutable
    {
          //  ....
    }
}

Then, you'd like to have a closure:

fn (Booking $b): ?\DateTimeImmutable => $b->getFreeCancellationDeadline();

It would be much neater to have it like this:

Booking::getFreeCancellationDeadline(...);

This is the exact form in which PhpStorm IDE copies the method reference ("Copy Reference" on the method - Ctrl+Alt+Sft+C).

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Das Issue nennt keine Quelldateien, Tests oder Einstiegspunkte. Beginne mit der Prüfung der vorgeschlagenen First-Class-Callable-Syntax und ihrer Auswirkungen auf den PHP-Interpreter; abgeschlossen ist die Aufgabe, wenn die demonstrierte Syntax für Referenzen auf Instanzmethoden unterstützt und durch geeignete Tests abgedeckt ist.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
php
Bereich
compilers
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.