NAME
gen_get_last_token - Parse backwards
SYNOPSIS
#include "l/l_parse.h"
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-I/home/kobus/include
-L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
int gen_get_last_token
(
char *input_line,
char *output_string,
size_t max_len,
const char *terminators
);
DESCRIPTION
The following may be hard to understand, but it is essentially the same thing
as gen_get_token, except that things start at the end and go to the begining.
The string input_line is parsed from the end towards the begining. First all
characters in "terminators" are ignored until a chacter not in terminators
is found. Then the characters are checked for of the charcters in
"terminators". If one if found, or if the begining is reached, then the
characters not in terminators that have been traversed are copied
(forwards!) into output_string, provided that there are less than max_len of
them. If there are more than max_len-1, then only max_len-1 are copied.
Output_string is then terminated by NULL. A NULL is also placed into the
appropriate place of input_line so that the parsed characters are "removed"
from the end.
RETURNS
STILL_MORE_TOKENS (1) if there is still more to parse, NO_MORE_TOKENS (0)
if there is no more, and ERROR if there is an error (e.g., buffer
overflow issue).
MACROS
BUFF_GEN_GET_LAST_TOKEN, BUFF_GEN_GET_LAST_TOKEN_OK
NOTE
The documentation for BUFF_GET_TOKEN has a short example of which
illustrates the general use of this grouup of parsing routines.
RELATED
BUFF_GEN_GET_LAST_TOKEN, gen_get_last_token_2, BUFF_GEN_GET_LAST_TOKEN_2,
gen_split_at_last_token
DISCLAIMER
This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.
AUTHOR
Kobus Barnard
DOCUMENTER
Kobus Barnard
SEE ALSO
next_token
,
const_next_token
,
get_token
,
const_get_token
,
match_quote_get_token
,
const_match_quote_get_token
,
match_get_token
,
const_match_get_token
,
gen_get_token
,
const_gen_get_token
,
gen_char_get_token
,
gen_match_quote_get_token
,
const_gen_match_quote_get_token
,
gen_match_get_token
,
const_gen_match_get_token
,
alpha_get_token
,
gen_get_last_token_2
,
gen_split_at_last_token
,
gen_split_at_last_token_2
,
parse_on_string
,
parse_positive_integer_list
,
parse_options
,
free_options
,
ic_parse_key_words
,
get_boolean_value
,
is_no_value_word
,
parse_path
,
get_base_name
,
get_base_path