mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-10 19:52:50 -06:00
An initial import of the teyjus source code in the C runtime for GF. The two runtime are still not connected but the source code compiles.
This commit is contained in:
44
src/runtime/c/teyjus/loader/searchtab.h
Normal file
44
src/runtime/c/teyjus/loader/searchtab.h
Normal file
@@ -0,0 +1,44 @@
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
//Copyright 2008
|
||||
// Andrew Gacek, Steven Holte, Gopalan Nadathur, Xiaochu Qi, Zach Snow
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
// This file is part of Teyjus. //
|
||||
// //
|
||||
// Teyjus 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 3 of the License, or //
|
||||
// (at your option) any later version. //
|
||||
// //
|
||||
// Teyjus 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 Teyjus. If not, see <http://www.gnu.org/licenses/>. //
|
||||
//////////////////////////////////////////////////////////////////////////////
|
||||
#ifndef _SEARCHTAB_H_
|
||||
#define _SEARCHTAB_H_
|
||||
|
||||
#include "../system/memory.h"
|
||||
|
||||
#define SEARCHTAB_FCF_SEQNSEARCH 0
|
||||
#define SEARCHTAB_FCF_HASHSEARCH 1
|
||||
|
||||
extern WordPtr LD_SEARCHTAB_LoadHashTab(MEM_GmtEnt* ent, int* size);
|
||||
|
||||
extern WordPtr LD_SEARCHTAB_LoadSeqSTab(MEM_GmtEnt* ent, int* size);
|
||||
|
||||
/**
|
||||
\brief Find code function for hash tables.
|
||||
\return The address of the code corresponding to the given index. Return address for values not in the table is undefined.
|
||||
**/
|
||||
extern CSpacePtr LD_SEARCHTAB_HashSrch(int constInd, int STabSize, MemPtr STabAddr);
|
||||
|
||||
/**
|
||||
\brief Find code function for sequential search tables.
|
||||
\return The address of the code corresponding to the given index. Return address for values not in the table is undefined.
|
||||
**/
|
||||
extern CSpacePtr LD_SEARCHTAB_SeqnSrch(int constInd, int STabSize, MemPtr STabAddr);
|
||||
|
||||
#endif //_SEARCHTAB_H_
|
||||
Reference in New Issue
Block a user