| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- {#
- Copyright (C) 2020 Embedded AMS B.V. - All Rights Reserved
- This file is part of Embedded Proto.
- Embedded Proto is open source software: you can redistribute it and/or
- modify it under the terms of the GNU General Public License as published
- by the Free Software Foundation, version 3 of the license.
- Embedded Proto is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with Embedded Proto. If not, see <https://www.gnu.org/licenses/>.
- For commercial and closed source application please visit:
- <https://EmbeddedProto.com/license/>.
- Embedded AMS B.V.
- Info:
- info at EmbeddedProto dot com
- Postal address:
- Johan Huizingalaan 763a
- 1066 VH, Amsterdam
- the Netherlands
- #}
- if(::EmbeddedProto::WireFormatter::WireType::{{field.get_wire_type_str()}} == wire_type)
- {
- {% if field.oneof is not none %}
- if(id::{{field.get_variable_id_name()}} != {{field.get_which_oneof()}})
- {
- init_{{field.get_oneof_name()}}(id::{{field.get_variable_id_name()}});
- }
- {% endif %}
- return_value = {{field.get_variable_name()}}.deserialize(buffer);
- {% if field.oneof is not none %}
- if(::EmbeddedProto::Error::NO_ERRORS != return_value)
- {
- clear_{{field.get_name()}}();
- }
- {% endif %}
- }
- else
- {
- // Wire type does not match field.
- return_value = ::EmbeddedProto::Error::INVALID_WIRETYPE;
- }
|