diff options
author | ridiculousfish <corydoras@ridiculousfish.com> | 2013-07-22 18:26:15 -0700 |
---|---|---|
committer | ridiculousfish <corydoras@ridiculousfish.com> | 2013-07-22 18:26:15 -0700 |
commit | 3e3eefc2dcb2e0e31b224703a063e05dc8c67996 (patch) | |
tree | 9535fc9f721b7e184bab85a3476b09869d215e4c /tokenizer.cpp | |
parent | 77b6b0a9b2e7260884064dbac72f17bb5e86431f (diff) |
Improvements to new parser. All functions and completions now parse.
Diffstat (limited to 'tokenizer.cpp')
-rw-r--r-- | tokenizer.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/tokenizer.cpp b/tokenizer.cpp index 831197ee..6d99b46c 100644 --- a/tokenizer.cpp +++ b/tokenizer.cpp @@ -651,13 +651,19 @@ wcstring tok_first(const wchar_t *str) return result; } -int tok_get_pos(tokenizer_t *tok) +int tok_get_pos(const tokenizer_t *tok) { CHECK(tok, 0); - return (int)tok->last_pos; } +size_t tok_get_extent(const tokenizer_t *tok) +{ + CHECK(tok, 0); + size_t current_pos = tok->buff - tok->orig_buff; + return current_pos > tok->last_pos ? current_pos - tok->last_pos : 0; +} + void tok_set_pos(tokenizer_t *tok, int pos) { |