Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:92274 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 69603 invoked from network); 14 Apr 2016 03:46:55 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 14 Apr 2016 03:46:55 -0000 Authentication-Results: pb1.pair.com smtp.mail=morrison.levi@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=morrison.levi@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.220.68 as permitted sender) X-PHP-List-Original-Sender: morrison.levi@gmail.com X-Host-Fingerprint: 209.85.220.68 mail-pa0-f68.google.com Received: from [209.85.220.68] ([209.85.220.68:34973] helo=mail-pa0-f68.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id BE/D0-60797-EA21F075 for ; Wed, 13 Apr 2016 23:46:55 -0400 Received: by mail-pa0-f68.google.com with SMTP id zy2so5624062pac.2 for ; Wed, 13 Apr 2016 20:46:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to; bh=G3iAj7J2wwBdQCHezsDweb0PdG2UTyD1ornR3jfGp/E=; b=dXb8ePOfk1gJLWFDR+92pnyFieuWHMdLYbwF/nRlGSU1as8pU8SgyGZcvpYG9/f9dM K0tMktz+36dNJiqV3yQhREKqv4lDRzLKikwVb0QckYuOXbX9/53q2HIC01O3qBBVcsZR szbtrugsV4bzDR9N5nA04EvuI7CktPEi3oQAcR9glK1BDzQkeTL8qF2Ex2noyax4xWnh /Z0l1pndUXh5Py1QmTPaQzxkot0v2Q2gRSaUfJA9t0paZpEZwbMEcXA5n4s+k6hC/w/i UPasG5Br5OaKx/HH52norkK7/zU4XKjk+91XKKkIRd0ReY+6CFfVcfFcygmKjJjES2iK 8xaQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:date:message-id:subject:from:to; bh=G3iAj7J2wwBdQCHezsDweb0PdG2UTyD1ornR3jfGp/E=; b=dT5dJInXFF53SeObhn48KWXmib6Q2VvEDCA3rsKa9nGD56upNLRV1Y8fGksr2aNhv7 PizgNULUHPj2FKz4W65IRiMKfTmVYZggW07a39fkZcbFa3uSoq77YjXvDwIl++ijvwmk Wa+bZ66Z5XpZdy4puWyavSc3BWBwYtRMPmNhYLC2/OWBYUXy+/btFJDFcUKAeOvg4s7L EHkoYasvnOC0mltMpmDYC6h2zVCLAYwoDkYg4CqSOW6zUmGqydXQtA/dE1dy/j9asmpj mXNlf1cgZzymUbZ3hEVGvfesRh8H1v1h5sTBD9ittq78YUEuoKNhlkkEMqy94b0MXiO0 ctaA== X-Gm-Message-State: AOPr4FWtiPVHq+R+aKY+/klYJHHlbsPlo/oQVKFFxawpJBSTTcYOZ+i6iKhZNTtWym+2k7v9M7IdzmJLMCUD8Q== MIME-Version: 1.0 X-Received: by 10.66.174.134 with SMTP id bs6mr17817043pac.53.1460605611216; Wed, 13 Apr 2016 20:46:51 -0700 (PDT) Received: by 10.66.163.232 with HTTP; Wed, 13 Apr 2016 20:46:51 -0700 (PDT) Date: Wed, 13 Apr 2016 21:46:51 -0600 Message-ID: To: internals Content-Type: text/plain; charset=UTF-8 Subject: [RFC] Union Types From: morrison.levi@gmail.com (Levi Morrison) As alluded to in an earlier email today[1] I am now moving the Union Types RFC[2] to the discussion phase. The short summary of the RFC is that it permits a type declaration to be one of several enumerated types. For example, this is a potential signature for a multi-type map routine: function map(callable $f, Array | Traversable $iterable); The second parameter `$iterable` is required to be of type Array or Traversable - any other type will error. I look forward to a helpful and meaningful discussion! [1]: http://news.php.net/php.internals/92252 [2]: https://wiki.php.net/rfc/union_types