21 |
#ifndef MUSCLE_TAB_H_ |
#ifndef MUSCLE_TAB_H_ |
22 |
# define MUSCLE_TAB_H_ |
# define MUSCLE_TAB_H_ |
23 |
|
|
24 |
|
# include "location.h" |
25 |
|
|
26 |
void muscle_init (void); |
void muscle_init (void); |
27 |
void muscle_insert (const char *key, char *value); |
void muscle_insert (const char *key, char *value); |
28 |
char *muscle_find (const char *key); |
char *muscle_find (const char *key); |
88 |
|
|
89 |
void muscle_grow (const char *key, const char *value, const char *separator); |
void muscle_grow (const char *key, const char *value, const char *separator); |
90 |
|
|
91 |
|
|
92 |
|
/* Append VALUE to the current value of KEY, using muscle_grow. But |
93 |
|
in addition, issue a synchronization line for the location LOC. */ |
94 |
|
|
95 |
|
void muscle_code_grow (const char *key, const char *value, location loc); |
96 |
|
|
97 |
|
|
98 |
/* MUSCLE is an M4 list of pairs. Create or extend it with the pair |
/* MUSCLE is an M4 list of pairs. Create or extend it with the pair |
99 |
(A1, A2). Note that because the muscle values are output *double* |
(A1, A2). Note that because the muscle values are output *double* |
100 |
quoted, one needs to strip the first level of quotes to reach the |
quoted, one needs to strip the first level of quotes to reach the |