bool WArgMap::checkOpt(const wchar_t *arg, wstring &cur_key) { bool is_already_have_has_val_key = false; while(*arg) { wchar_t temp[] = {*arg, L'\0'}; if(hasAlias(*arg) && doseKeyHasVal(alias_[*arg])) { if(is_already_have_has_val_key) return false; // 後に値が必要なものが2個以上一度に指定された is_already_have_has_val_key = true; cur_key = alias_[*arg]; } else if(doseKeyHasVal(wstring(temp))) { if(is_already_have_has_val_key) return false; // 後に値が必要なものが2個以上一度に指定された is_already_have_has_val_key = true; cur_key = wstring(temp); } else if(hasAlias(*arg)) { (*this)[alias_[*arg]]; cur_key = L""; } else { (*this)[wstring(temp)]; cur_key = L""; } arg++; } return true; }
QString Import::toString(bool addSemicolon, bool skipAlias) const { QString result = QLatin1String("import "); if (isFileImport()) result += '"' + file() + '"'; else if (isLibraryImport()) result += url(); else return QString(); if (hasVersion()) result += ' ' + version(); if (hasAlias() && !skipAlias) result += " as " + alias(); if (addSemicolon) result += ';'; return result; }
v8::Handle<v8::Object> ObjectCache<K>::get(K key){ //return handle to existing object if already wrapped //check by calling has() first if (hasAlias(key)) key = aliases[key]; return cache[key]; }
bool ObjectCache<K>::has(K key) { return cache.count(key) > 0 || hasAlias(key); }