version 1.33, 2010/03/23 21:50:43 |
version 1.34, 2010/03/24 03:46:02 |
|
|
|
|
#include "libman.h" |
#include "libman.h" |
|
|
#define REW_REWIND (0) /* See rew_scope(). */ |
enum rew { |
#define REW_NOHALT (1) /* See rew_scope(). */ |
REW_REWIND, |
#define REW_HALT (2) /* See rew_scope(). */ |
REW_NOHALT, |
|
REW_HALT, |
|
}; |
|
|
static int in_line_eoln(MACRO_PROT_ARGS); |
static int in_line_eoln(MACRO_PROT_ARGS); |
static int blk_imp(MACRO_PROT_ARGS); |
static int blk_imp(MACRO_PROT_ARGS); |
Line 35 static int blk_close(MACRO_PROT_ARGS); |
|
Line 37 static int blk_close(MACRO_PROT_ARGS); |
|
|
|
static int rew_scope(enum man_type, |
static int rew_scope(enum man_type, |
struct man *, enum mant); |
struct man *, enum mant); |
static int rew_dohalt(enum mant, enum man_type, |
static enum rew rew_dohalt(enum mant, enum man_type, |
const struct man_node *); |
const struct man_node *); |
static int rew_block(enum mant, enum man_type, |
static enum rew rew_block(enum mant, enum man_type, |
const struct man_node *); |
const struct man_node *); |
|
|
const struct man_macro __man_macros[MAN_MAX] = { |
const struct man_macro __man_macros[MAN_MAX] = { |
Line 104 man_unscope(struct man *m, const struct man_node *n) |
|
Line 106 man_unscope(struct man *m, const struct man_node *n) |
|
} |
} |
|
|
|
|
static int |
static enum rew |
rew_block(enum mant ntok, enum man_type type, const struct man_node *n) |
rew_block(enum mant ntok, enum man_type type, const struct man_node *n) |
{ |
{ |
|
|
Line 120 rew_block(enum mant ntok, enum man_type type, const st |
|
Line 122 rew_block(enum mant ntok, enum man_type type, const st |
|
* section (all less sections), and scoped to subsections (all less |
* section (all less sections), and scoped to subsections (all less |
* sections and subsections). |
* sections and subsections). |
*/ |
*/ |
static int |
static enum rew |
rew_dohalt(enum mant tok, enum man_type type, const struct man_node *n) |
rew_dohalt(enum mant tok, enum man_type type, const struct man_node *n) |
{ |
{ |
int c; |
enum rew c; |
|
|
if (MAN_ROOT == n->type) |
if (MAN_ROOT == n->type) |
return(REW_HALT); |
return(REW_HALT); |
|
|
rew_scope(enum man_type type, struct man *m, enum mant tok) |
rew_scope(enum man_type type, struct man *m, enum mant tok) |
{ |
{ |
struct man_node *n; |
struct man_node *n; |
int c; |
enum rew c; |
|
|
/* LINTED */ |
/* LINTED */ |
for (n = m->last; n; n = n->parent) { |
for (n = m->last; n; n = n->parent) { |
Line 319 in_line_eoln(MACRO_PROT_ARGS) |
|
Line 321 in_line_eoln(MACRO_PROT_ARGS) |
|
return(0); |
return(0); |
if (0 == w) |
if (0 == w) |
break; |
break; |
|
|
/* XXX ignore Vb arguments for now */ |
|
if (MAN_Vb == tok) |
|
continue; |
|
|
|
if ( ! man_word_alloc(m, line, la, p)) |
if ( ! man_word_alloc(m, line, la, p)) |
return(0); |
return(0); |
} |
} |