mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-25 09:39:52 +08:00
277f9b7e60
darcs-hash:20051024152625-ac50b-41503feb4ea8d428c5b30c159aaae0c8f7ae46a2.gz
34 lines
725 B
C
34 lines
725 B
C
/** \file intern.h
|
|
|
|
Library for pooling common strings
|
|
|
|
*/
|
|
|
|
#ifndef FISH_INTERN_H
|
|
#define FISH_INTERN_H
|
|
|
|
#include <wchar.h>
|
|
|
|
/**
|
|
Return an identical copy of the specified string from a pool of unique strings. If the string was not in the pool, add a copy.
|
|
|
|
\param in the string to return an interned copy of
|
|
*/
|
|
const wchar_t *intern( const wchar_t *in );
|
|
|
|
/**
|
|
Insert the specified string literal into the pool of unique
|
|
strings. The string will not first be copied, and it will not be
|
|
free'd on exit.
|
|
|
|
\param in the string to add to the interned pool
|
|
*/
|
|
const wchar_t *intern_static( const wchar_t *in );
|
|
|
|
/**
|
|
Free all interned strings. Only call this at shutdown.
|
|
*/
|
|
void intern_free_all();
|
|
|
|
#endif
|