+\r
+ return s;\r
+}\r
+\r
+std::ostream & operator<< (std::ostream & out, const Variable & v)\r
+{\r
+ out << v.type << " ";\r
+\r
+ std::string s = v.name;\r
+ \r
+ // lookup variable and change name to reflect containing namespace\r
+ auto var = findVariable(v.name, namespaces, globalCtx);\r
+ if (var.has_value())\r
+ s = vectorStr(std::get<1>(*var), "_", true) + s;\r
+\r
+ // apply modifiers in C fashion\r
+ out << generateModifiers(s, v.type.modifiers);\r