220 23939 <aa728646-aa3e-4b0c-b693-348bc0344d26@isocpp.org> article
Path: news.gmane.org!not-for-mail
From: gufideg@gmail.com
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Question about N4447
Date: Fri, 22 Jan 2016 10:52:20 -0800 (PST)
Lines: 40
Approved: news@gmane.org
Message-ID: <aa728646-aa3e-4b0c-b693-348bc0344d26@isocpp.org>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: plane.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_975_379361640.1453488740671"
X-Trace: ger.gmane.org 1453488746 16912 80.91.229.3 (22 Jan 2016 18:52:26 GMT)
X-Complaints-To: usenet@ger.gmane.org
NNTP-Posting-Date: Fri, 22 Jan 2016 18:52:26 +0000 (UTC)
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBC23RWMN2YNRBZPURG2QKGQELUX3C5A@isocpp.org Fri Jan 22 19:52:26 2016
Return-path: <std-proposals+bncBC23RWMN2YNRBZPURG2QKGQELUX3C5A@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-qk0-f197.google.com ([209.85.220.197])
	by plane.gmane.org with esmtp (Exim 4.69)
	(envelope-from <std-proposals+bncBC23RWMN2YNRBZPURG2QKGQELUX3C5A@isocpp.org>)
	id 1aMgor-0003BY-Fi
	for gclcip-std-proposals@m.gmane.org; Fri, 22 Jan 2016 19:52:25 +0100
Original-Received: by mail-qk0-f197.google.com with SMTP id u128sf128488584qkh.0
        for <gclcip-std-proposals@m.gmane.org>; Fri, 22 Jan 2016 10:52:25 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:message-id:subject:mime-version:content-type
         :x-original-sender:reply-to:precedence:mailing-list:list-id
         :x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=d1Q3Tmlw/h7JvUvS3gsfucXPwo1+5OCNAIS0POqbV3w=;
        b=08YS+MCuFrWQsL5xW507TfcY8jMhhDirm+QGxNxXYoiZs6XWNr8XGqYBWxUtGKzisD
         zhV0VVBX/+HBpbXPyVlVvlXOAs3wxPCJzVsQe2bBqD0e1e8B23AUFpA7CmpAaLIPFyqX
         7wrDXvmZ3XjCJ3yM5L0QXSeM6huxUbIaLMx60E4gCFkvq5JdhHwh2eXbfsoZtMgRgjdn
         5622/O/g79UQXvV1EEppoMbEQs88ibuGvnDh7dMwWd1FvreZa/gyqjfUIx2pc18y9EVA
         oinpQsiLw9FJXHrO44j33deUNzGp7pefkyjOmEmKUQ1eJrpTh1b2W3A9yC/5En4/JP72
         g6Pg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=date:from:to:message-id:subject:mime-version:content-type
         :x-original-sender:reply-to:precedence:mailing-list:list-id
         :x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=d1Q3Tmlw/h7JvUvS3gsfucXPwo1+5OCNAIS0POqbV3w=;
        b=tF1E6yonUllABVx0ogeyeDfWwEeKGSNpT04F5F+4ppDpJUrhcXUNI2hDnnG4a6sh4v
         E/YRSk/OVcf9kT5rCkeEclQTEcrKMn8sqxlczsE9xzKpny3zN9bKLd8NIuxSfEFmiVf4
         oKr8iH73rs9Aj7NSwwXJQ2oysYQ0P4kHYgfaq8nHxzMWjTOM6Ix/TYTbiBXtUbRw0jPW
         9SdqEgGQLZ7aw1imDK0wRGiuaCUCTqBN1TquoUmZNybWASJl/mVt81ZGxFvihJfQh3hF
         4nFbWp2P8VIl33aMfxzzUtCfV98Q+3lZtZ9W4FKl6F/OgBrdzDVp/uh+vkeebJYUEGBN
         iYSA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20130820;
        h=x-gm-message-state:date:from:to:message-id:subject:mime-version
         :content-type:x-original-sender:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=d1Q3Tmlw/h7JvUvS3gsfucXPwo1+5OCNAIS0POqbV3w=;
        b=OE52KDALqcxjk26/ILx1WJCmAsQvhnbDUejp1Zubyh3xa59eZW30jBUIGYNEk/wRuf
         bVBNSqw/BDPBF1OpYfXUzH9y3qD02gDeqvQ4e7zv+uqdKpHhIoonvyYZdttZ1hzSnSf5
         jyERndrjD0NFsLICn4KFNqe3v6dr5n2iTSkH27SDOKvYqgbDEqlIe7nXXmGZuZMgCXSD
         XkJ6EcIygwSwg1kjqNKAdcUIc0Ajfm9xspU3lzmrKRBB6Sq8TBmQJYzPpDILbmVwlvKG
         YsXycdomntEWk1YLy/97L4ThC+b0Ek1Lr2L2/ge5MREMDTQ1K/gksDyceduxMmdHB9ka
         ifXQ==
X-Gm-Message-State: AG10YOQDzfAC/Bh3mHq/Xwp7zXfNm1Mv8QYDZHR+6hhz9TtC6ZOZ1y74psqV0Lq6nc5IkA==
X-Received: by 10.13.227.133 with SMTP id m127mr3940898ywe.1.1453488744039;
        Fri, 22 Jan 2016 10:52:24 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.107.9.101 with SMTP id j98ls959100ioi.13.gmail; Fri, 22 Jan
 2016 10:52:21 -0800 (PST)
X-Received: by 10.50.114.132 with SMTP id jg4mr189410igb.1.1453488741714;
        Fri, 22 Jan 2016 10:52:21 -0800 (PST)
X-Original-Sender: gufideg@gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: std-proposals@isocpp.org
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:23939
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/23939>

------=_Part_975_379361640.1453488740671
Content-Type: text/plain; charset=UTF-8

Hi. I've been thinking about N4447 lately. First, this proposal is wonderful. It's something I dreamt of a long time. Thanks everyone.

I have a question about it: the syntax use the `...` To expand the result. Does this mean it follows all the same rules as the parameter pack expansion? Let me explain.

Let's say we have this struct:

    template<typename Class, typename T>
    struct Member {
        constexpr Memeber(T Class::*aMember, const char* aName) : member{aMember}, name{aName} {}

        using Type = T;

        T Class::*member;
        const char* name;
    };

    template<typename Class, typename T>
    constexpr auto makeMember(T Class::*member, const char* name) {
        return Member<Class, T>{member, name};
    }

With the current proposal, is it possible to write something like this?

    constexpr auto members = std::make_tuple( makeMember(typedef<AClass>, typeid<AClass>)... );

Note that I used both `typedef<...>`and `typeid<...>` with the same expansion.

-- 

--- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.

------=_Part_975_379361640.1453488740671--

.
