[ 
https://issues.apache.org/jira/browse/PROTON-1138?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15185134#comment-15185134
 ] 

ASF subversion and git services commented on PROTON-1138:
---------------------------------------------------------

Commit bdaf901a13b4d710b9db845b7c102e10c7d88778 in qpid-proton's branch 
refs/heads/master from [~aconway]
[ https://git-wip-us.apache.org/repos/asf?p=qpid-proton.git;h=bdaf901 ]

PROTON-1138: c++: Enable implicit value conversion

Enable implicit template conversion constructor for proton::value, with
a compile-time enable_amqp_type template test to ensure it only matches
C++ types that can be encoded as AMQP values. Messge constructor and
body setter also use this test.

Type traits is_encodable and is_decodable are true if the << or >>
operators exist on the proton::encoder and proton::decoder. This means
user-defined operators for custom type encodings are respected by value
and message.

Other notes:

- encoder operator<< for value is a template to ensure exact
  match and avoid recursion via implicit conversion in is_encodable

- Moved encoder, decoder, data into proton::internal namespace.

- Cleaned up some friendships (more work to do) Make encoder/decoder operators
  members operators for built-in types (friend of class not free operator 
function.)


> Assorted C++ API cleanups
> -------------------------
>
>                 Key: PROTON-1138
>                 URL: https://issues.apache.org/jira/browse/PROTON-1138
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: cpp-binding
>    Affects Versions: 0.13.0
>            Reporter: Justin Ross
>            Assignee: Justin Ross
>             Fix For: 0.13.0
>
>




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to