text: /*
   * This file is part of the Sofia-SIP package
   *
   * Copyright (C) 2005 Nokia Corporation.
   *
   * Contact: Pekka Pessi <pekka.pessi@nokia.com>
   *
   * This library is free software; you can redistribute it and/or
   * modify it under the terms of the GNU Lesser General Public License
   * as published by the Free Software Foundation; either version 2.1 of
   * the License, or (at your option) any later version.
   *
   * This library 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
   * Lesser General Public License for more details.
   *
   * You should have received a copy of the GNU Lesser General Public
   * License along with this library; if not, write to the Free Software
   * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
   * 02110-1301 USA
   *
   */
  
  /**@ingroup msg_mime
   *
   * @CFILE msg_mime_table.c
   * @brief Parser table used for testing.
   *
   * This file is automatically generated from <msg_mime.h> by msg_parser.awk.
   *
   * This file is generated from template <msg_mime_table.c.in>.
   *
   * @author Pekka Pessi <Pekka.Pessi@nokia.com>
   */
  
  #include "config.h"
  
  #include <stddef.h>
  #include <string.h>
  
  #include <sofia-sip/msg_mime.h>
  #include <sofia-sip/msg_mime_protos.h>
  
  #include <sofia-sip/msg_mclass.h>
  
  #define msg_multipart_extract_body NULL
  
  #define msg_request_class NULL
  #define mp_request mp_common
  
  #define msg_status_class NULL
  #define mp_status  mp_common
  
  #define msg_multipart_update NULL
  
  #define MSG_MULTIPART_HCLASS                                   \
  MSG_HEADER_CLASS(msg_, multipart, NULL, "", mp_common, append, \
  	         msg_multipart, msg_multipart)
  
  
  
  #define msg_offsetof(s, f) ((unsigned short)offsetof(s ,f))
  
  static msg_href_t const msg_multipart_short_forms[MC_SHORT_SIZE] = 
  {
    { NULL },
    { NULL },
    { /* c */ msg_content_type_class, msg_offsetof(msg_multipart_t, mp_content_type) },
    { NULL },
    { /* e */ msg_content_encoding_class, msg_offsetof(msg_multipart_t, mp_content_encoding) },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL },
    { NULL }
  };
  
  
  msg_mclass_t const msg_multipart_mclass[1] = 
  {{
  # if defined (MSG_MULTIPART_HCLASS)
    MSG_MULTIPART_HCLASS,
  #else
    {{ 0 }},
  #endif
    MSG_MULTIPART_VERSION_CURRENT,
    MSG_MULTIPART_PROTOCOL_TAG,
  #if defined (MSG_MULTIPART_PARSER_FLAGS)
    MSG_MULTIPART_PARSER_FLAGS,
  #else
    0,
  #endif
    sizeof (msg_multipart_t),
    msg_multipart_extract_body,
    {{ msg_request_class, msg_offsetof(msg_multipart_t, mp_request) }},
    {{ msg_status_class, msg_offsetof(msg_multipart_t, mp_status) }},
    {{ msg_separator_class, msg_offsetof(msg_multipart_t, mp_separator) }},
    {{ msg_payload_class, msg_offsetof(msg_multipart_t, mp_payload) }},
    {{ msg_unknown_class, msg_offsetof(msg_multipart_t, mp_unknown) }},
    {{ msg_error_class, msg_offsetof(msg_multipart_t, mp_error) }},
    {{ NULL, 0 }},
    msg_multipart_short_forms, 
    127, 
    7,
    {
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_language_class, msg_offsetof(msg_multipart_t, mp_content_language) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_location_class, msg_offsetof(msg_multipart_t, mp_content_location) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_type_class, msg_offsetof(msg_multipart_t, mp_content_type) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_encoding_class, msg_offsetof(msg_multipart_t, mp_content_encoding) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_disposition_class, msg_offsetof(msg_multipart_t, mp_content_disposition) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_transfer_encoding_class, msg_offsetof(msg_multipart_t, mp_content_transfer_encoding) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { msg_content_id_class, msg_offsetof(msg_multipart_t, mp_content_id) },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 },
      { NULL, 0 }
    }
  }};
  
  