mirror of
https://git.savannah.gnu.org/git/gperf.git
synced 2025-12-02 21:19:24 +00:00
Move Keyword_List inline methods to a .icc file.
This commit is contained in:
@@ -1,5 +1,11 @@
|
||||
2002-11-02 Bruno Haible <bruno@clisp.org>
|
||||
|
||||
* src/keyword-list.icc: New file, extracted from keyword-list.h.
|
||||
* src/keyword-list.h: Include keyword-list.icc. Move inline methods
|
||||
to there.
|
||||
* src/keyword-list.cc: Include keyword-list.icc.
|
||||
* src/Makefile.in (KEYWORD_LIST_H): Add keyword-list.icc.
|
||||
|
||||
* lib/hashpjw.h (hashpjw): Change argument type to 'unsigned char *'.
|
||||
* lib/hash.cc (hashpjw): Likewise.
|
||||
* src/keyword.icc: New file.
|
||||
|
||||
@@ -88,7 +88,7 @@ VERSION_H = version.h
|
||||
OPTIONS_H = options.h options.icc
|
||||
READ_LINE_H = read-line.h read-line.icc
|
||||
KEYWORD_H = keyword.h keyword.icc
|
||||
KEYWORD_LIST_H = keyword-list.h $(KEYWORD_H)
|
||||
KEYWORD_LIST_H = keyword-list.h keyword-list.icc $(KEYWORD_H)
|
||||
INPUT_H = input.h $(READ_LINE_H) $(KEYWORD_LIST_H)
|
||||
BOOL_ARRAY_H = bool-array.h bool-array.icc $(OPTIONS_H)
|
||||
HASH_TABLE_H = hash-table.h $(KEYWORD_H)
|
||||
|
||||
@@ -36,3 +36,12 @@ KeywordExt_List::KeywordExt_List (KeywordExt *car)
|
||||
: Keyword_List (car)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
#ifndef __OPTIMIZE__
|
||||
|
||||
#define INLINE /* not inline */
|
||||
#include "keyword-list.icc"
|
||||
#undef INLINE
|
||||
|
||||
#endif /* not defined __OPTIMIZE__ */
|
||||
|
||||
@@ -35,9 +35,9 @@ public:
|
||||
Keyword_List (Keyword *car);
|
||||
|
||||
/* Access to first element of list. */
|
||||
Keyword * first () { return _car; }
|
||||
Keyword * first ();
|
||||
/* Access to next element of list. */
|
||||
Keyword_List *& rest () { return _cdr; }
|
||||
Keyword_List *& rest ();
|
||||
|
||||
protected:
|
||||
Keyword_List * _cdr;
|
||||
@@ -52,9 +52,17 @@ public:
|
||||
KeywordExt_List (KeywordExt *car);
|
||||
|
||||
/* Access to first element of list. */
|
||||
KeywordExt * first () { return static_cast<KeywordExt*>(_car); }
|
||||
KeywordExt * first ();
|
||||
/* Access to next element of list. */
|
||||
KeywordExt_List *& rest () { return static_cast<KeywordExt_List*>(_cdr); }
|
||||
KeywordExt_List *& rest ();
|
||||
};
|
||||
|
||||
#ifdef __OPTIMIZE__
|
||||
|
||||
#define INLINE inline
|
||||
#include "keyword-list.icc"
|
||||
#undef INLINE
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
53
src/keyword-list.icc
Normal file
53
src/keyword-list.icc
Normal file
@@ -0,0 +1,53 @@
|
||||
/* Inline Functions for keyword-list.{h,cc}.
|
||||
|
||||
Copyright (C) 2002 Free Software Foundation, Inc.
|
||||
Written by Bruno Haible <bruno@clisp.org>.
|
||||
|
||||
This file is part of GNU GPERF.
|
||||
|
||||
GNU GPERF is free 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; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
GNU GPERF 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 this program; see the file COPYING.
|
||||
If not, write to the Free Software Foundation, Inc.,
|
||||
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* -------------------------- Keyword_List class --------------------------- */
|
||||
|
||||
/* Access to first element of list. */
|
||||
INLINE Keyword *
|
||||
Keyword_List::first ()
|
||||
{
|
||||
return _car;
|
||||
}
|
||||
|
||||
/* Access to next element of list. */
|
||||
INLINE Keyword_List *&
|
||||
Keyword_List::rest ()
|
||||
{
|
||||
return _cdr;
|
||||
}
|
||||
|
||||
/* ------------------------- KeywordExt_List class ------------------------- */
|
||||
|
||||
/* Access to first element of list. */
|
||||
INLINE KeywordExt *
|
||||
KeywordExt_List::first ()
|
||||
{
|
||||
return static_cast<KeywordExt*>(_car);
|
||||
}
|
||||
|
||||
/* Access to next element of list. */
|
||||
INLINE KeywordExt_List *&
|
||||
KeywordExt_List::rest ()
|
||||
{
|
||||
return static_cast<KeywordExt_List*>(_cdr);
|
||||
}
|
||||
Reference in New Issue
Block a user