Blame src/symbol.h

Packit Service a721b1
/* symbol.h -- header file for the symbol module.
Packit Service a721b1
   Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012
Packit Service a721b1
     National Institute of Advanced Industrial Science and Technology (AIST)
Packit Service a721b1
     Registration Number H15PRO112
Packit Service a721b1
Packit Service a721b1
   This file is part of the m17n library.
Packit Service a721b1
Packit Service a721b1
   The m17n library is free software; you can redistribute it and/or
Packit Service a721b1
   modify it under the terms of the GNU Lesser General Public License
Packit Service a721b1
   as published by the Free Software Foundation; either version 2.1 of
Packit Service a721b1
   the License, or (at your option) any later version.
Packit Service a721b1
Packit Service a721b1
   The m17n library is distributed in the hope that it will be useful,
Packit Service a721b1
   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service a721b1
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service a721b1
   Lesser General Public License for more details.
Packit Service a721b1
Packit Service a721b1
   You should have received a copy of the GNU Lesser General Public
Packit Service a721b1
   License along with the m17n library; if not, write to the Free
Packit Service a721b1
   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Packit Service a721b1
   Boston, MA 02110-1301 USA.  */
Packit Service a721b1
Packit Service a721b1
#ifndef _M17N_SYMBOL_H_
Packit Service a721b1
#define _M17N_SYMBOL_H_
Packit Service a721b1
Packit Service a721b1
#include "plist.h"
Packit Service a721b1
Packit Service a721b1
struct MSymbolStruct
Packit Service a721b1
{
Packit Service a721b1
  /** 1 iff a value of property (including text-property) whose key is
Packit Service a721b1
      the symbol is a managed object.  */
Packit Service a721b1
  unsigned managing_key : 1;
Packit Service a721b1
Packit Service a721b1
  /* Name of the symbol. */
Packit Service a721b1
  char *name;
Packit Service a721b1
Packit Service a721b1
  /* Byte length of <name>.  */
Packit Service a721b1
  int length;
Packit Service a721b1
Packit Service a721b1
  /* Plist of the symbol.  */
Packit Service a721b1
  MPlist plist;
Packit Service a721b1
Packit Service a721b1
  struct MSymbolStruct *next;
Packit Service a721b1
};
Packit Service a721b1
Packit Service a721b1
#define MSYMBOL_NAME(sym) ((sym)->name)
Packit Service a721b1
#define MSYMBOL_NAMELEN(sym) ((sym)->length - 1)
Packit Service a721b1
Packit Service a721b1
extern void msymbol__free_table ();
Packit Service a721b1
Packit Service a721b1
extern MSymbol msymbol__with_len (const char *name, int len);
Packit Service a721b1
Packit Service a721b1
extern MPlist *msymbol__list (MSymbol prop);
Packit Service a721b1
Packit Service a721b1
extern MSymbol msymbol__canonicalize (MSymbol sym);
Packit Service a721b1
Packit Service a721b1
extern MTextPropSerializeFunc msymbol__serializer;
Packit Service a721b1
extern MTextPropDeserializeFunc msymbol__deserializer;
Packit Service a721b1
Packit Service a721b1
#endif /* _M17N_SYMBOL_H_ */