aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/viml/parser/expressions.h
diff options
context:
space:
mode:
authorZyX <kp-pav@yandex.ru>2017-10-06 01:19:43 +0300
committerZyX <kp-pav@yandex.ru>2017-10-15 19:13:50 +0300
commit163792e9b9854fe046ada3233dec0fd0f6c55737 (patch)
tree2cb7739324748a54f609881f0870431cc7e5617a /src/nvim/viml/parser/expressions.h
parent0bc4e2237960712426da3774c1430f5874c49aea (diff)
downloadrneovim-163792e9b9854fe046ada3233dec0fd0f6c55737.tar.gz
rneovim-163792e9b9854fe046ada3233dec0fd0f6c55737.tar.bz2
rneovim-163792e9b9854fe046ada3233dec0fd0f6c55737.zip
viml/parser/expressions: Make lexer parse numbers, support non-decimal
Diffstat (limited to 'src/nvim/viml/parser/expressions.h')
-rw-r--r--src/nvim/viml/parser/expressions.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nvim/viml/parser/expressions.h b/src/nvim/viml/parser/expressions.h
index 8ca3ceacb9..29903490bb 100644
--- a/src/nvim/viml/parser/expressions.h
+++ b/src/nvim/viml/parser/expressions.h
@@ -7,6 +7,7 @@
#include "nvim/types.h"
#include "nvim/viml/parser/parser.h"
+#include "nvim/eval/typval.h"
// Defines whether to ignore case:
// == kCCStrategyUseOption
@@ -113,6 +114,11 @@ typedef struct {
} err; ///< For kExprLexInvalid
struct {
+ union {
+ float_T floating;
+ uvarnumber_T integer;
+ } val; ///< Number value.
+ uint8_t base; ///< Base: 2, 8, 10 or 16.
bool is_float; ///< True if number is a floating-point.
} num; ///< For kExprLexNumber
} data; ///< Additional data, if needed.