Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
/* ----------------------------------------------------------------------- *
*
* macros.h - header file for module to handle macro substitution
* variables for map entries.
*
* Copyright 2006 Ian Kent <raven@themaw.net>
*
* This program 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, Inc., 675 Mass Ave, Cambridge MA 02139,
* USA; either version 2 of the License, or (at your option) any later
* version; incorporated herein by reference.
*
* ----------------------------------------------------------------------- */
#ifndef MACROS_H
#define MACROS_H
#define MAX_MACRO_STRING 128
struct substvar {
char *def; /* Define variable */
char *val; /* Value to replace with */
unsigned int readonly; /* System vars are readonly */
struct substvar *next;
};
void macro_init(void);
int macro_is_systemvar(const char *str, int len);
int macro_global_addvar(const char *str, int len, const char *value);
int macro_parse_globalvar(const char *define);
void macro_lock(void);
void macro_unlock(void);
struct substvar *
macro_addvar(struct substvar *table, const char *str, int len, const char *value);
void macro_global_removevar(const char *str, int len);
struct substvar *
macro_removevar(struct substvar *table, const char *str, int len);
void macro_free_global_table(void);
void macro_free_table(struct substvar *table);
const struct substvar *
macro_findvar(const struct substvar *table, const char *str, int len);
void macro_setenv(struct substvar *table);
#endif