2017-01-01 00:14:16 +00:00
|
|
|
/* Copyright (C) 2000-2017 Free Software Foundation, Inc.
|
2000-10-01 19:15:29 +00:00
|
|
|
This file is part of the GNU C Library.
|
|
|
|
|
2005-12-07 05:49:17 +00:00
|
|
|
This program is free software; you can redistribute it and/or modify
|
2007-07-16 00:56:07 +00:00
|
|
|
it under the terms of the GNU General Public License as published
|
|
|
|
by the Free Software Foundation; version 2 of the License, or
|
|
|
|
(at your option) any later version.
|
2000-10-01 19:15:29 +00:00
|
|
|
|
2005-12-07 05:49:17 +00:00
|
|
|
This program is distributed in the hope that it will be useful,
|
2000-10-01 19:15:29 +00:00
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2005-12-07 05:49:17 +00:00
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU General Public License for more details.
|
2000-10-01 19:15:29 +00:00
|
|
|
|
2005-12-07 05:49:17 +00:00
|
|
|
You should have received a copy of the GNU General Public License
|
2012-02-09 23:18:22 +00:00
|
|
|
along with this program; if not, see <http://www.gnu.org/licenses/>. */
|
2000-10-01 19:15:29 +00:00
|
|
|
|
|
|
|
#ifndef _CHARMAP_DIR_H
|
|
|
|
#define _CHARMAP_DIR_H 1
|
|
|
|
|
|
|
|
/* The data type of a charmap directory being traversed. */
|
|
|
|
typedef struct charmap_dir CHARMAP_DIR;
|
|
|
|
|
|
|
|
/* Starts a charmap directory traversal.
|
|
|
|
Returns a CHARMAP_DIR, or NULL if the directory doesn't exist. */
|
|
|
|
extern CHARMAP_DIR *charmap_opendir (const char *directory);
|
|
|
|
|
|
|
|
/* Reads the next directory entry.
|
|
|
|
Returns its charmap name, or NULL if past the last entry or upon error.
|
|
|
|
The storage returned may be overwritten by a later charmap_readdir
|
|
|
|
call on the same CHARMAP_DIR. */
|
|
|
|
extern const char *charmap_readdir (CHARMAP_DIR *dir);
|
|
|
|
|
|
|
|
/* Finishes a charmap directory traversal, and frees the resources
|
|
|
|
attached to the CHARMAP_DIR. */
|
|
|
|
extern int charmap_closedir (CHARMAP_DIR *dir);
|
|
|
|
|
|
|
|
/* Returns a NULL terminated list of alias names of a charmap. */
|
|
|
|
extern char **charmap_aliases (const char *directory, const char *name);
|
|
|
|
|
|
|
|
/* Frees an alias list returned by charmap_aliases. */
|
|
|
|
extern void charmap_free_aliases (char **aliases);
|
|
|
|
|
|
|
|
/* Opens a charmap for reading, given its name (not an alias name). */
|
|
|
|
extern FILE *charmap_open (const char *directory, const char *name);
|
|
|
|
|
|
|
|
#endif /* _CHARMAP_DIR_H */
|