aboutsummaryrefslogtreecommitdiff
path: root/func.cc
diff options
context:
space:
mode:
authorShinichiro Hamaji <shinichiro.hamaji@gmail.com>2015-06-26 04:18:21 +0900
committerShinichiro Hamaji <shinichiro.hamaji@gmail.com>2015-06-26 16:42:23 +0900
commitf62e9a715e23083b9d3434286653a8a84ea9599c (patch)
treef7c27dd33b3bd93e3cbdbba4b77db6c0a5a40923 /func.cc
parent420f7754d973242d4120ed67a942bfb386706494 (diff)
downloadkati-f62e9a715e23083b9d3434286653a8a84ea9599c.tar.gz
[C++] Define VarOrigin
Diffstat (limited to 'func.cc')
-rw-r--r--func.cc7
1 files changed, 4 insertions, 3 deletions
diff --git a/func.cc b/func.cc
index b46e50c..97e90cd 100644
--- a/func.cc
+++ b/func.cc
@@ -423,7 +423,8 @@ void CallFunc(const vector<Value*>& args, Evaluator* ev, string* s) {
vector<unique_ptr<SimpleVar>> av;
vector<unique_ptr<ScopedVar>> sv;
for (size_t i = 1; i < args.size(); i++) {
- unique_ptr<SimpleVar> s(new SimpleVar(args[i]->Eval(ev), "automatic"));
+ unique_ptr<SimpleVar> s(
+ new SimpleVar(args[i]->Eval(ev), VarOrigin::AUTOMATIC));
sv.push_back(move(unique_ptr<ScopedVar>(
new ScopedVar(ev->mutable_vars(), tmpvar_names[i], s.get()))));
av.push_back(move(s));
@@ -437,7 +438,7 @@ void ForeachFunc(const vector<Value*>& args, Evaluator* ev, string* s) {
WordWriter ww(s);
for (StringPiece tok : WordScanner(*list)) {
unique_ptr<SimpleVar> v(new SimpleVar(
- make_shared<string>(tok.data(), tok.size()), "automatic"));
+ make_shared<string>(tok.data(), tok.size()), VarOrigin::AUTOMATIC));
ScopedVar sv(ev->mutable_vars(), *varname, v.get());
ww.MaybeAddWhitespace();
args[2]->Eval(ev, s);
@@ -447,7 +448,7 @@ void ForeachFunc(const vector<Value*>& args, Evaluator* ev, string* s) {
void OriginFunc(const vector<Value*>& args, Evaluator* ev, string* s) {
shared_ptr<string> var_name = args[0]->Eval(ev);
Var* var = ev->LookupVar(*var_name);
- *s += var->Origin();
+ *s += GetOriginStr(var->Origin());
}
void FlavorFunc(const vector<Value*>& args, Evaluator* ev, string* s) {