diff options
author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2010-05-01 10:42:47 +0000 |
---|---|---|
committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2010-05-01 10:42:47 +0000 |
commit | 07a1d8fb7403df83db5969ab69ede384691cd24a (patch) | |
tree | f4567cb6f78e80b61eddcef9427ecdad816f7a2a /navit/command.c | |
parent | 9c61ad067e4f9e088058fa53fbbb858fd1091c7e (diff) | |
download | navit-svn-07a1d8fb7403df83db5969ab69ede384691cd24a.tar.gz |
Add:Core:Possibility to get attribute type for callback from an expression
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@3214 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/command.c')
-rw-r--r-- | navit/command.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/navit/command.c b/navit/command.c index 7767f0ae..07a03066 100644 --- a/navit/command.c +++ b/navit/command.c @@ -754,6 +754,20 @@ command_evaluate_to(struct attr *attr, const char *expr, struct context *ctx, st eval_comma(ctx,res); } +enum attr_type +command_evaluate_to_attr(struct attr *attr, char *expr, int *error, struct attr *ret) +{ + struct result res; + struct context ctx; + command_evaluate_to(attr, expr, &ctx, &res); + if (ctx.error) + return attr_none; + resolve_object(&ctx, &res); + *ret=res.attr; + dbg(0,"type %s\n",attr_to_name(command_attr_type(&res))); + return command_attr_type(&res); +} + void command_evaluate_to_void(struct attr *attr, char *expr, int *error) { |