fish-shell/intern.h

34 lines
725 B
C
Raw Normal View History

/** \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