add h_seq_elements accessor

This commit is contained in:
Sven M. Hallberg 2013-01-25 19:24:04 +01:00
parent 2f312b8c1f
commit 102d9e2c86
2 changed files with 11 additions and 1 deletions

View file

@ -121,6 +121,13 @@ size_t h_seq_len(const HParsedToken *p)
return p->seq->used;
}
HParsedToken **h_seq_elements(const HParsedToken *p)
{
assert(p != NULL);
assert(p->token_type == TT_SEQUENCE);
return p->seq->elements;
}
HParsedToken *h_seq_index(const HParsedToken *p, size_t i)
{
assert(p != NULL);

View file

@ -77,8 +77,11 @@ uint64_t h_cast_uint (const HParsedToken *p);
// Return the length of a sequence.
size_t h_seq_len(const HParsedToken *p);
// Access a sequence's element array.
HParsedToken **h_seq_elements(const HParsedToken *p);
// Access a sequence element by index.
HParsedToken * h_seq_index(const HParsedToken *p, size_t i);
HParsedToken *h_seq_index(const HParsedToken *p, size_t i);
// Convenience functions combining index access and h_cast_*.
HCountedArray *h_seq_index_seq (const HParsedToken *p, size_t i);