3 * \file Biblio_typedef.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef BIBLIO_TYPEDEFS_H
13 #define BIBLIO_TYPEDEFS_H
15 #include "support/docstring.h"
21 /// Class to represent information about a BibTeX or
22 /// bibliography entry.
23 /// The keys are BibTeX fields, and the values are the
24 /// associated field values.
25 /// \param isBibTex false if this is from an InsetBibitem
26 /// \param allData the entire BibTeX entry, more or less
27 /// \param entryType the BibTeX entry type
28 class BibTeXInfo : public std::map<docstring, docstring> {
31 BibTeXInfo(bool isBibTeX);
32 bool hasKey(docstring const & key);
39 class BibKeyList : public std::set<std::string, BibTeXInfo> {
41 std::set<string> keys;
46 /// First entry is the bibliography key, second the data
47 typedef std::map<std::string, BibTeXInfo> BibKeyList;