已合并
fix(lsp): adapt ty api #1239
songjian创建于 8月24日
fix(lsp): adapt ty api #1239
已合并
共 73 个文件变更+410-237
| @@ -313,7 +313,7 @@ public: | |||
| 313 | }; | 313 | }; |
| 314 | // LCOV_EXCL_STOP | 314 | // LCOV_EXCL_STOP |
| 315 | std::set<Ptr<Cangjie::AST::ExtendDecl> > | 315 | std::set<Ptr<Cangjie::AST::ExtendDecl> > |
| 316 | - GetExtendDecls(const std::variant<Ptr<Cangjie::AST::Ty>, Ptr<Cangjie::AST::InheritableDecl> > &type, | 316 | + GetExtendDecls(const std::variant<Cangjie::AST::ModalTy, Ptr<Cangjie::AST::InheritableDecl> > &type, |
| 317 | const std::string& packageName) | 317 | const std::string& packageName) |
| 318 | { | 318 | { |
| 319 | if (!pLRUCache) { return {}; } | 319 | if (!pLRUCache) { return {}; } |
| @@ -327,7 +327,7 @@ public: | |||
| 327 | }; | 327 | }; |
| 328 | 328 | ||
| 329 | std::vector<Ptr<Cangjie::AST::Decl> > | 329 | std::vector<Ptr<Cangjie::AST::Decl> > |
| 330 | - GetAllVisibleExtendMembers(const std::variant<Ptr<Cangjie::AST::Ty>, Ptr<Cangjie::AST::InheritableDecl> > &type, | 330 | + GetAllVisibleExtendMembers(const std::variant<Cangjie::AST::ModalTy, Ptr<Cangjie::AST::InheritableDecl> > &type, |
| 331 | const std::string& packageName, const AST::File& curFile) | 331 | const std::string& packageName, const AST::File& curFile) |
| 332 | { | 332 | { |
| 333 | if (!pLRUCache) { return {}; } | 333 | if (!pLRUCache) { return {}; } |
| @@ -1627,7 +1627,7 @@ ark::lsp::SymbolID CompletionEnv::GetDeclSymbolID(const Decl& decl) | |||
| 1627 | return ret; | 1627 | return ret; |
| 1628 | } | 1628 | } |
| 1629 | 1629 | ||
| 1630 | -ark::lsp::SymbolID CompletionEnv::GetPrimaryTypeSymbolId(const Ptr<Ty> ty) | 1630 | +ark::lsp::SymbolID CompletionEnv::GetPrimaryTypeSymbolId(const DataTy ty) |
| 1631 | { | 1631 | { |
| 1632 | if (!ty || !ty->IsPrimitive()) { | 1632 | if (!ty || !ty->IsPrimitive()) { |
| 1633 | return ark::lsp::INVALID_SYMBOL_ID; | 1633 | return ark::lsp::INVALID_SYMBOL_ID; |
| @@ -52,7 +52,7 @@ public: | |||
| 52 | 52 | ||
| 53 | static ark::lsp::SymbolID GetDeclSymbolID(const Decl& decl); | 53 | static ark::lsp::SymbolID GetDeclSymbolID(const Decl& decl); |
| 54 | 54 | ||
| 55 | - static ark::lsp::SymbolID GetPrimaryTypeSymbolId(const Ptr<Ty> ty); | 55 | + static ark::lsp::SymbolID GetPrimaryTypeSymbolId(const DataTy ty); |
| 56 | 56 | ||
| 57 | // make sure use this in safe | 57 | // make sure use this in safe |
| 58 | static Range GetEditRangeForAutoImport(const ArkAST &file); | 58 | static Range GetEditRangeForAutoImport(const ArkAST &file); |
| @@ -336,7 +336,7 @@ void DotCompleterByParse::CompleteByReferenceTarget(const Position &pos, const s | |||
| 336 | } | 336 | } |
| 337 | 337 | ||
| 338 | void DotCompleterByParse::GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_ptr<ArkAST> arkAst, | 338 | void DotCompleterByParse::GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_ptr<ArkAST> arkAst, |
| 339 | - Ptr<Ty> &ty, Ptr<NameReferenceExpr> &resExpr) | 339 | + DataTy &ty, Ptr<NameReferenceExpr> &resExpr) |
| 340 | { | 340 | { |
| 341 | Ptr<NameReferenceExpr> semaCacheExpr; | 341 | Ptr<NameReferenceExpr> semaCacheExpr; |
| 342 | auto macroCallNodes = &arkAst->file->originalMacroCallNodes; | 342 | auto macroCallNodes = &arkAst->file->originalMacroCallNodes; |
| @@ -369,7 +369,7 @@ void DotCompleterByParse::GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_pt | |||
| 369 | auto searchTy = [&ty, ¯oBeginPos, &maNextTokenPos, &resExpr](auto node) { | 369 | auto searchTy = [&ty, ¯oBeginPos, &maNextTokenPos, &resExpr](auto node) { |
| 370 | if (auto ma = dynamic_cast<NameReferenceExpr *>(node.get())) { | 370 | if (auto ma = dynamic_cast<NameReferenceExpr *>(node.get())) { |
| 371 | if (ma->begin == macroBeginPos && (maNextTokenPos.IsZero() || ma->end <= maNextTokenPos)) { | 371 | if (ma->begin == macroBeginPos && (maNextTokenPos.IsZero() || ma->end <= maNextTokenPos)) { |
| 372 | - ty = ma->GetTy(); | 372 | + ty = ma->DataTy(); |
| 373 | resExpr = ma; | 373 | resExpr = ma; |
| 374 | return VisitAction::STOP_NOW; | 374 | return VisitAction::STOP_NOW; |
| 375 | } | 375 | } |
| @@ -418,20 +418,20 @@ void DotCompleterByParse::CompleteCandidate(const Position &pos, const std::stri | |||
| 418 | isEnumCtor = true; | 418 | isEnumCtor = true; |
| 419 | env.SetValue(FILTER::IS_STATIC, false); | 419 | env.SetValue(FILTER::IS_STATIC, false); |
| 420 | } | 420 | } |
| 421 | - Ptr<Ty> ty = decl->GetTy(); | 421 | + DataTy ty = decl->DataTy(); |
| 422 | auto vd = DynamicCast<VarDecl *>(decl); | 422 | auto vd = DynamicCast<VarDecl *>(decl); |
| 423 | if (vd && vd->type) { | 423 | if (vd && vd->type) { |
| 424 | - ty = vd->type->GetTy(); | 424 | + ty = vd->type->DataTy(); |
| 425 | } | 425 | } |
| 426 | CompleteFromType(decl->identifier, pos, ty, env); | 426 | CompleteFromType(decl->identifier, pos, ty, env); |
| 427 | } | 427 | } |
| 428 | } else { | 428 | } else { |
| 429 | for (auto &ty : declOrTy.tys) { | 429 | for (auto &ty : declOrTy.tys) { |
| 430 | if (ty->kind == TypeKind::TYPE_ENUM) { | 430 | if (ty->kind == TypeKind::TYPE_ENUM) { |
| 431 | - isEnumCtor = IsEnumCtorTy(prefix, ty); | 431 | + isEnumCtor = IsEnumCtorTy(prefix, ty.get()); |
| 432 | } | 432 | } |
| 433 | const std::string identifier = prefix == "this" || prefix == "super" ? prefix : ""; | 433 | const std::string identifier = prefix == "this" || prefix == "super" ? prefix : ""; |
| 434 | - CompleteFromType(identifier, pos, ty, env); | 434 | + CompleteFromType(identifier, pos, ty.get(), env); |
| 435 | } | 435 | } |
| 436 | } | 436 | } |
| 437 | env.OutputResult(result); | 437 | env.OutputResult(result); |
| @@ -1100,13 +1100,13 @@ void DotCompleterByParse::InitMap() const | |||
| 1100 | DotMatcher::GetInstance().RegFunc(ASTKind::IF_AVAILABLE_EXPR, &ark::DotCompleterByParse::FindIfAvailableExpr); | 1100 | DotMatcher::GetInstance().RegFunc(ASTKind::IF_AVAILABLE_EXPR, &ark::DotCompleterByParse::FindIfAvailableExpr); |
| 1101 | } | 1101 | } |
| 1102 | 1102 | ||
| 1103 | -void DotCompleterByParse::AddExtendDeclFromIndex(Ptr<Ty> extendTy, CompletionEnv &env) const | 1103 | +void DotCompleterByParse::AddExtendDeclFromIndex(DataTy extendTy, CompletionEnv &env) const |
| 1104 | { | 1104 | { |
| 1105 | - std::vector<Ptr<Ty>> extendTys = {extendTy}; | 1105 | + std::vector<DataTy> extendTys = {extendTy}; |
| 1106 | AddExtendDeclFromIndexBatch(extendTys, env); | 1106 | AddExtendDeclFromIndexBatch(extendTys, env); |
| 1107 | } | 1107 | } |
| 1108 | 1108 | ||
| 1109 | -void DotCompleterByParse::AddExtendVisibleMembers(const std::vector<Ptr<Ty>> &extendTys, | 1109 | +void DotCompleterByParse::AddExtendVisibleMembers(const std::vector<DataTy> &extendTys, |
| 1110 | CompletionEnv &env, | 1110 | CompletionEnv &env, |
| 1111 | ArkAST *ast, | 1111 | ArkAST *ast, |
| 1112 | std::unordered_set<lsp::SymbolID> &ids, | 1112 | std::unordered_set<lsp::SymbolID> &ids, |
| @@ -1126,7 +1126,8 @@ void DotCompleterByParse::AddExtendVisibleMembers(const std::vector<Ptr<Ty>> &ex | |||
| 1126 | 1126 | ||
| 1127 | for (auto extendTy : extendTys) { | 1127 | for (auto extendTy : extendTys) { |
| 1128 | auto extendMembers = | 1128 | auto extendMembers = |
| 1129 | - CompilerCangjieProject::GetInstance()->GetAllVisibleExtendMembers(extendTy, packageNameForPath, *ast->file); | 1129 | + CompilerCangjieProject::GetInstance()->GetAllVisibleExtendMembers( |
| 1130 | + {extendTy}, packageNameForPath, *ast->file); | ||
| 1130 | auto decl = Ty::GetDeclPtrOfTy(extendTy); | 1131 | auto decl = Ty::GetDeclPtrOfTy(extendTy); |
| 1131 | if (!decl && !extendTy->IsPrimitive()) { | 1132 | if (!decl && !extendTy->IsPrimitive()) { |
| 1132 | continue; | 1133 | continue; |
| @@ -1160,7 +1161,7 @@ void DotCompleterByParse::AddExtendVisibleMembers(const std::vector<Ptr<Ty>> &ex | |||
| 1160 | } | 1161 | } |
| 1161 | } | 1162 | } |
| 1162 | 1163 | ||
| 1163 | -void DotCompleterByParse::AddExtendDeclFromIndexBatch(const std::vector<Ptr<Ty>> &extendTys, CompletionEnv &env) const | 1164 | +void DotCompleterByParse::AddExtendDeclFromIndexBatch(const std::vector<DataTy> &extendTys, CompletionEnv &env) const |
| 1164 | { | 1165 | { |
| 1165 | if (extendTys.empty()) { | 1166 | if (extendTys.empty()) { |
| 1166 | return; | 1167 | return; |
| @@ -1287,7 +1288,7 @@ void DotCompleterByParse::CompleteFromType(const std::string &identifier, | |||
| 1287 | if (!aliasDecl || !aliasDecl->type) { | 1288 | if (!aliasDecl || !aliasDecl->type) { |
| 1288 | return; | 1289 | return; |
| 1289 | } | 1290 | } |
| 1290 | - CompleteFromType(identifier, pos, aliasDecl->type->GetTy(), env); | 1291 | + CompleteFromType(identifier, pos, aliasDecl->type->GetTy().get(), env); |
| 1291 | } else if (typeid(*type) == typeid(GenericsTy)) { | 1292 | } else if (typeid(*type) == typeid(GenericsTy)) { |
| 1292 | auto genericsDecl = dynamic_cast<GenericsTy *>(type)->upperBounds; | 1293 | auto genericsDecl = dynamic_cast<GenericsTy *>(type)->upperBounds; |
| 1293 | for (auto ty : genericsDecl) { | 1294 | for (auto ty : genericsDecl) { |
| @@ -1304,7 +1305,7 @@ void DotCompleterByParse::CompleteFromType(const std::string &identifier, | |||
| 1304 | } | 1305 | } |
| 1305 | } | 1306 | } |
| 1306 | 1307 | ||
| 1307 | -void DotCompleterByParse::CompleteClassDecl(Ptr<Ty> ty, const Cangjie::Position &pos, | 1308 | +void DotCompleterByParse::CompleteClassDecl(DataTy ty, const Cangjie::Position &pos, |
| 1308 | CompletionEnv &env, bool isSuperOrThis) const | 1309 | CompletionEnv &env, bool isSuperOrThis) const |
| 1309 | { | 1310 | { |
| 1310 | auto classDecl = DynamicCast<ClassDecl>(Ty::GetDeclPtrOfTy(ty)); | 1311 | auto classDecl = DynamicCast<ClassDecl>(Ty::GetDeclPtrOfTy(ty)); |
| @@ -1336,7 +1337,7 @@ void DotCompleterByParse::CompleteClassDecl(Ptr<Ty> ty, const Cangjie::Position | |||
| 1336 | if (ark::Is<ClassDecl>(classDecl->GetSuperClassDecl().get())) { | 1337 | if (ark::Is<ClassDecl>(classDecl->GetSuperClassDecl().get())) { |
| 1337 | auto superClass = classDecl->GetSuperClassDecl(); | 1338 | auto superClass = classDecl->GetSuperClassDecl(); |
| 1338 | env.SetValue(FILTER::IS_SUPER, true); | 1339 | env.SetValue(FILTER::IS_SUPER, true); |
| 1339 | - CompleteClassDecl(superClass->GetTy(), pos, env, isSuperOrThis); | 1340 | + CompleteClassDecl(superClass->GetTy().Ty(), pos, env, isSuperOrThis); |
| 1340 | } | 1341 | } |
| 1341 | } | 1342 | } |
| 1342 | 1343 | ||
| @@ -1363,12 +1364,12 @@ void DotCompleterByParse::CompleteSuperInterface(Ptr<const InterfaceDecl> interf | |||
| 1363 | } | 1364 | } |
| 1364 | auto refType = dynamic_cast<RefType*>(inheritedType.get().get()); | 1365 | auto refType = dynamic_cast<RefType*>(inheritedType.get().get()); |
| 1365 | if (Cangjie::Is<InterfaceTy>(refType->GetTy().get()) && !IsHiddenDecl(refType->ref.target)) { | 1366 | if (Cangjie::Is<InterfaceTy>(refType->GetTy().get()) && !IsHiddenDecl(refType->ref.target)) { |
| 1366 | - CompleteFromType("", pos, refType->GetTy(), env); | 1367 | + CompleteFromType("", pos, refType->GetTy().get(), env); |
| 1367 | } | 1368 | } |
| 1368 | } | 1369 | } |
| 1369 | } | 1370 | } |
| 1370 | 1371 | ||
| 1371 | -void DotCompleterByParse::CompleteEnumDecl(Ptr<Ty> ty, const Cangjie::Position &pos, CompletionEnv &env) const | 1372 | +void DotCompleterByParse::CompleteEnumDecl(DataTy ty, const Cangjie::Position &pos, CompletionEnv &env) const |
| 1372 | { | 1373 | { |
| 1373 | // TD: Enum Type will be written later. | 1374 | // TD: Enum Type will be written later. |
| 1374 | auto enumDecl = DynamicCast<EnumDecl>(Ty::GetDeclPtrOfTy(ty)); | 1375 | auto enumDecl = DynamicCast<EnumDecl>(Ty::GetDeclPtrOfTy(ty)); |
| @@ -1413,7 +1414,7 @@ void DotCompleterByParse::CompleteEnumInterface(Ptr<EnumDecl> enumDecl, const Po | |||
| 1413 | } | 1414 | } |
| 1414 | } | 1415 | } |
| 1415 | // LCOV_EXCL_STOP | 1416 | // LCOV_EXCL_STOP |
| 1416 | -void DotCompleterByParse::CompleteStructDecl(Ptr<Ty> ty, const Cangjie::Position &pos, CompletionEnv &env) const | 1417 | +void DotCompleterByParse::CompleteStructDecl(DataTy ty, const Cangjie::Position &pos, CompletionEnv &env) const |
| 1417 | { | 1418 | { |
| 1418 | // TD: Struct Type will be written later. | 1419 | // TD: Struct Type will be written later. |
| 1419 | auto structDecl = dynamic_cast<StructTy *>(ty.get())->decl; | 1420 | auto structDecl = dynamic_cast<StructTy *>(ty.get())->decl; |
| @@ -1450,7 +1451,7 @@ void DotCompleterByParse::CompleteBuiltInType(Ty *type, CompletionEnv &env) cons | |||
| 1450 | return; | 1451 | return; |
| 1451 | } | 1452 | } |
| 1452 | auto extendDecls = CompilerCangjieProject::GetInstance()->GetAllVisibleExtendMembers( | 1453 | auto extendDecls = CompilerCangjieProject::GetInstance()->GetAllVisibleExtendMembers( |
| 1453 | - type, packageNameForPath, *ast->file); | 1454 | + Cangjie::AST::ModalTy{Cangjie::AST::DataTy{type}}, packageNameForPath, *ast->file); |
| 1454 | for (auto &decl : extendDecls) { | 1455 | for (auto &decl : extendDecls) { |
| 1455 | if (!syscap.CheckSysCap(decl) || IsHiddenDecl(decl) || IsHiddenDecl(decl->outerDecl)) { | 1456 | if (!syscap.CheckSysCap(decl) || IsHiddenDecl(decl) || IsHiddenDecl(decl->outerDecl)) { |
| 1456 | return; | 1457 | return; |
| @@ -1472,7 +1473,7 @@ void DotCompleterByParse::CompleteBuiltInType(Ty *type, CompletionEnv &env) cons | |||
| 1472 | 1473 | ||
| 1473 | if (type->IsIdeal()) { | 1474 | if (type->IsIdeal()) { |
| 1474 | auto kinds = GetIdealTypesByKind(type->kind); | 1475 | auto kinds = GetIdealTypesByKind(type->kind); |
| 1475 | - std::vector<Ptr<Ty>> extendTys; | 1476 | + std::vector<DataTy> extendTys; |
| 1476 | for (auto kind: kinds) { | 1477 | for (auto kind: kinds) { |
| 1477 | auto primitivety = TypeManager::GetPrimitiveTy(kind); | 1478 | auto primitivety = TypeManager::GetPrimitiveTy(kind); |
| 1478 | extendTys.push_back(primitivety); | 1479 | extendTys.push_back(primitivety); |
| @@ -43,7 +43,7 @@ public: | |||
| 43 | CompletionEnv &env) const; | 43 | CompletionEnv &env) const; |
| 44 | 44 | ||
| 45 | private: | 45 | private: |
| 46 | - void CompleteClassDecl(Ptr<Cangjie::AST::Ty> ty, | 46 | + void CompleteClassDecl(Cangjie::AST::DataTy ty, |
| 47 | const Cangjie::Position &pos, | 47 | const Cangjie::Position &pos, |
| 48 | CompletionEnv &env, | 48 | CompletionEnv &env, |
| 49 | bool isSuperOrThis = false) const; | 49 | bool isSuperOrThis = false) const; |
| @@ -52,9 +52,9 @@ private: | |||
| 52 | const Cangjie::Position &pos, | 52 | const Cangjie::Position &pos, |
| 53 | CompletionEnv &env) const; | 53 | CompletionEnv &env) const; |
| 54 | 54 | ||
| 55 | - void CompleteEnumDecl(Ptr<Cangjie::AST::Ty> ty, const Cangjie::Position &pos, CompletionEnv &env) const; | 55 | + void CompleteEnumDecl(Cangjie::AST::DataTy ty, const Cangjie::Position &pos, CompletionEnv &env) const; |
| 56 | 56 | ||
| 57 | - void CompleteStructDecl(Ptr<Cangjie::AST::Ty> ty, const Cangjie::Position &pos, CompletionEnv &env) const; | 57 | + void CompleteStructDecl(Cangjie::AST::DataTy ty, const Cangjie::Position &pos, CompletionEnv &env) const; |
| 58 | 58 | ||
| 59 | void CompleteBuiltInType(Ty *type, CompletionEnv &env) const; | 59 | void CompleteBuiltInType(Ty *type, CompletionEnv &env) const; |
| 60 | 60 | ||
| @@ -67,11 +67,11 @@ private: | |||
| 67 | std::set<std::string> FindDeclSetByFiles(const std::string &packageName, | 67 | std::set<std::string> FindDeclSetByFiles(const std::string &packageName, |
| 68 | std::vector<OwnedPtr<Cangjie::AST::File>> &files) const; | 68 | std::vector<OwnedPtr<Cangjie::AST::File>> &files) const; |
| 69 | 69 | ||
| 70 | - void AddExtendDeclFromIndex(Ptr<Ty> extendTy, CompletionEnv &env) const; | 70 | + void AddExtendDeclFromIndex(DataTy extendTy, CompletionEnv &env) const; |
| 71 | 71 | ||
| 72 | - void AddExtendVisibleMembers(const std::vector<Ptr<Ty>> &extendTys, CompletionEnv &env, ArkAST *ast, | 72 | + void AddExtendVisibleMembers(const std::vector<DataTy> &extendTys, CompletionEnv &env, ArkAST *ast, |
| 73 | std::unordered_set<lsp::SymbolID> &ids, std::unordered_set<lsp::SymbolID> &allVisibleMembers) const; | 73 | std::unordered_set<lsp::SymbolID> &ids, std::unordered_set<lsp::SymbolID> &allVisibleMembers) const; |
| 74 | - void AddExtendDeclFromIndexBatch(const std::vector<Ptr<Ty>> &extendTys, CompletionEnv &env) const; | 74 | + void AddExtendDeclFromIndexBatch(const std::vector<DataTy> &extendTys, CompletionEnv &env) const; |
| 75 | 75 | ||
| 76 | std::string QueryByPos(Ptr<Node> node, const Position pos); | 76 | std::string QueryByPos(Ptr<Node> node, const Position pos); |
| 77 | 77 | ||
| @@ -204,12 +204,12 @@ private: | |||
| 204 | std::vector<OwnedPtr<AST::Decl>> &decls); | 204 | std::vector<OwnedPtr<AST::Decl>> &decls); |
| 205 | 205 | ||
| 206 | void GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_ptr<ArkAST> arkAst, | 206 | void GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_ptr<ArkAST> arkAst, |
| 207 | - Ptr<Ty> &ty, Ptr<NameReferenceExpr> &resExpr); | 207 | + DataTy &ty, Ptr<NameReferenceExpr> &resExpr); |
| 208 | 208 | ||
| 209 | void CompleteByReferenceTarget(const Position &pos, const std::string &prefix, CompletionEnv &env, | 209 | void CompleteByReferenceTarget(const Position &pos, const std::string &prefix, CompletionEnv &env, |
| 210 | const Ptr<Expr> &expr, std::string &scopeName); | 210 | const Ptr<Expr> &expr, std::string &scopeName); |
| 211 | 211 | ||
| 212 | - Ptr<Ty> GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_ptr<ArkAST> arkAst); | 212 | + DataTy GetTyFromMacroCallNodes(Ptr<Expr> expr, std::unique_ptr<ArkAST> arkAst); |
| 213 | 213 | ||
| 214 | bool CheckInIfAvailable(Ptr<Decl> decl, const Position &pos); | 214 | bool CheckInIfAvailable(Ptr<Decl> decl, const Position &pos); |
| 215 | 215 | ||
| @@ -191,22 +191,19 @@ void OverrideCompleter::ExtractReplace(Ptr<Decl> decl) | |||
| 191 | } | 191 | } |
| 192 | for (const auto& inheritedType: inheritedTypes) { | 192 | for (const auto& inheritedType: inheritedTypes) { |
| 193 | Ptr<ClassLikeDecl> inheritedDecl = nullptr; | 193 | Ptr<ClassLikeDecl> inheritedDecl = nullptr; |
| 194 | - if (auto clsTy = DynamicCast<ClassTy*>(inheritedType->GetTy())) { | 194 | + if (auto clsTy = DynamicCast<ClassTy*>(inheritedType->GetTy().get())) { |
| 195 | inheritedDecl = clsTy->declPtr; | 195 | inheritedDecl = clsTy->declPtr; |
| 196 | - } else if (auto ifTy = DynamicCast<InterfaceTy*>(inheritedType->GetTy())) { | 196 | + } else if (auto ifTy = DynamicCast<InterfaceTy*>(inheritedType->GetTy().get())) { |
| 197 | inheritedDecl = ifTy->declPtr; | 197 | inheritedDecl = ifTy->declPtr; |
| 198 | } | 198 | } |
| 199 | if (!inheritedDecl || !inheritedType->GetTy()) { | 199 | if (!inheritedDecl || !inheritedType->GetTy()) { |
| 200 | continue; | 200 | continue; |
| 201 | } | 201 | } |
| 202 | - auto originalDetail = ResolveType(inheritedDecl->GetTy()); | 202 | + auto originalDetail = ResolveType(inheritedDecl->GetTy().Ty()); |
| 203 | if (!originalDetail) { | 203 | if (!originalDetail) { |
| 204 | return; | 204 | return; |
| 205 | } | 205 | } |
| 206 | - auto newDetail = ResolveType(inheritedType->GetTy()); | 206 | + auto newDetail = ResolveType(inheritedType->GetTy().Ty()); |
| 207 | - if (!newDetail) { | ||
| 208 | - return; | ||
| 209 | - } | ||
| 210 | for (auto& item: replace) { | 207 | for (auto& item: replace) { |
| 211 | newDetail->SetIdentifier(item.first, item.second); | 208 | newDetail->SetIdentifier(item.first, item.second); |
| 212 | } | 209 | } |
Mcangjie-language-server/src/languageserver/capabilities/definition/CrossDefinitionCangjie2C.cpp+11-11
| @@ -44,16 +44,16 @@ std::string CrossDefinitionCangjie2C::TypeVarray(const Cangjie::AST::Ty *ty, boo | |||
| 44 | for (auto &item: ty->typeArgs) { | 44 | for (auto &item: ty->typeArgs) { |
| 45 | if (!isSimple) { | 45 | if (!isSimple) { |
| 46 | if (item->kind == TypeKind::TYPE_VARRAY || item->kind == TypeKind::TYPE_CSTRING) { | 46 | if (item->kind == TypeKind::TYPE_VARRAY || item->kind == TypeKind::TYPE_CSTRING) { |
| 47 | - return GetCType(item) + "[]"; | 47 | + return GetCType(item.get()) + "[]"; |
| 48 | } | 48 | } |
| 49 | if (item->kind == TypeKind::TYPE_POINTER) { | 49 | if (item->kind == TypeKind::TYPE_POINTER) { |
| 50 | - const string baseType = GetCType(item, true); | 50 | + const string baseType = GetCType(item.get(), true); |
| 51 | return baseType == CANGJIE2C.find(TypeKind::TYPE_CSTRING)->second ? baseType + "*[]" : | 51 | return baseType == CANGJIE2C.find(TypeKind::TYPE_CSTRING)->second ? baseType + "*[]" : |
| 52 | baseType + " *[]"; | 52 | baseType + " *[]"; |
| 53 | } | 53 | } |
| 54 | - return GetCType(item) + " []"; | 54 | + return GetCType(item.get()) + " []"; |
| 55 | } | 55 | } |
| 56 | - return GetCType(item, true); | 56 | + return GetCType(item.get(), true); |
| 57 | } | 57 | } |
| 58 | return "unknown"; | 58 | return "unknown"; |
| 59 | } | 59 | } |
| @@ -63,16 +63,16 @@ std::string CrossDefinitionCangjie2C::TypeCpointer(const Cangjie::AST::Ty *ty, b | |||
| 63 | for (auto &item: ty->typeArgs) { | 63 | for (auto &item: ty->typeArgs) { |
| 64 | if (!isSimple) { | 64 | if (!isSimple) { |
| 65 | if (item->kind == TypeKind::TYPE_POINTER || item->kind == TypeKind::TYPE_CSTRING) { | 65 | if (item->kind == TypeKind::TYPE_POINTER || item->kind == TypeKind::TYPE_CSTRING) { |
| 66 | - return GetCType(item) + "*"; | 66 | + return GetCType(item.get()) + "*"; |
| 67 | } | 67 | } |
| 68 | if (item->kind == TypeKind::TYPE_VARRAY) { | 68 | if (item->kind == TypeKind::TYPE_VARRAY) { |
| 69 | - const string baseType = GetCType(item, true); | 69 | + const string baseType = GetCType(item.get(), true); |
| 70 | return baseType == CANGJIE2C.find(TypeKind::TYPE_CSTRING)->second ? baseType + "*" : | 70 | return baseType == CANGJIE2C.find(TypeKind::TYPE_CSTRING)->second ? baseType + "*" : |
| 71 | baseType + " *"; | 71 | baseType + " *"; |
| 72 | } | 72 | } |
| 73 | - return GetCType(item, true) + " *"; | 73 | + return GetCType(item.get(), true) + " *"; |
| 74 | } | 74 | } |
| 75 | - return GetCType(item, true); | 75 | + return GetCType(item.get(), true); |
| 76 | } | 76 | } |
| 77 | return "unknown"; | 77 | return "unknown"; |
| 78 | } | 78 | } |
| @@ -83,10 +83,10 @@ void CrossDefinitionCangjie2C::Cangjie2CGetFuncMessage(std::vector<message> &Cro | |||
| 83 | message message; | 83 | message message; |
| 84 | bool inValid = !funcDecl || !funcDecl->funcBody || !funcDecl->funcBody->retType || | 84 | bool inValid = !funcDecl || !funcDecl->funcBody || !funcDecl->funcBody->retType || |
| 85 | !funcDecl->funcBody->retType->GetTy() || funcDecl->funcBody->paramLists.empty() || | 85 | !funcDecl->funcBody->retType->GetTy() || funcDecl->funcBody->paramLists.empty() || |
| 86 | - GetCType(funcDecl->funcBody->retType->GetTy()) == "unknown"; | 86 | + GetCType(funcDecl->funcBody->retType->GetTy().get()) == "unknown"; |
| 87 | if (inValid) { return; } | 87 | if (inValid) { return; } |
| 88 | for (const auto &item: funcDecl->funcBody->paramLists[0]->params) { | 88 | for (const auto &item: funcDecl->funcBody->paramLists[0]->params) { |
| 89 | - string basicString = GetCType(item->GetTy()); | 89 | + string basicString = GetCType(item->GetTy().get()); |
| 90 | if (basicString == "unknown") { | 90 | if (basicString == "unknown") { |
| 91 | message.functionParameters = {}; | 91 | message.functionParameters = {}; |
| 92 | return; | 92 | return; |
| @@ -99,7 +99,7 @@ void CrossDefinitionCangjie2C::Cangjie2CGetFuncMessage(std::vector<message> &Cro | |||
| 99 | } | 99 | } |
| 100 | message.targetLanguage = "C"; | 100 | message.targetLanguage = "C"; |
| 101 | message.functionName = funcDecl->identifier; | 101 | message.functionName = funcDecl->identifier; |
| 102 | - message.retType = GetCType(funcDecl->funcBody->retType->GetTy()); | 102 | + message.retType = GetCType(funcDecl->funcBody->retType->GetTy().get()); |
| 103 | if (funcDecl->hasVariableLenArg) { | 103 | if (funcDecl->hasVariableLenArg) { |
| 104 | (void) message.functionParameters.emplace_back("..."); | 104 | (void) message.functionParameters.emplace_back("..."); |
| 105 | } | 105 | } |
| @@ -130,7 +130,7 @@ std::string GetDocumentSymbolNameByFuncDecl(const FuncDecl &decl, bool isMain) | |||
| 130 | detail += ": Int64"; | 130 | detail += ": Int64"; |
| 131 | return detail; | 131 | return detail; |
| 132 | } | 132 | } |
| 133 | - Ty *retTy = decl.funcBody->retType ? decl.funcBody->retType->GetTy() : nullptr; | 133 | + Ty *retTy = decl.funcBody->retType ? decl.funcBody->retType->GetTy().get() : nullptr; |
| 134 | std::string retTyStr; | 134 | std::string retTyStr; |
| 135 | if (decl.funcBody->retType) { | 135 | if (decl.funcBody->retType) { |
| 136 | retTyStr = ItemResolverUtil::ResolveTypeSignature(*decl.funcBody->retType); | 136 | retTyStr = ItemResolverUtil::ResolveTypeSignature(*decl.funcBody->retType); |
| @@ -380,7 +380,7 @@ std::string HoverImpl::GetHoverMessageByOuterDecl(const Decl &node) | |||
| 380 | if (decl.GetTy() == nullptr) { | 380 | if (decl.GetTy() == nullptr) { |
| 381 | return detail; | 381 | return detail; |
| 382 | } | 382 | } |
| 383 | - Ptr<Decl> realDecl = ItemResolverUtil::GetDeclByTy(decl.GetTy()); | 383 | + Ptr<Decl> realDecl = ItemResolverUtil::GetDeclByTy(decl.GetTy().get()); |
| 384 | if (realDecl == nullptr) { | 384 | if (realDecl == nullptr) { |
| 385 | return detail; | 385 | return detail; |
| 386 | } | 386 | } |
Mcangjie-language-server/src/languageserver/capabilities/overrideMethods/FindOverrideMethodsImpl.cpp+3-3
| @@ -172,17 +172,17 @@ void ExtractReplace(const Ptr<InheritableDecl>& decl, std::unordered_map<Ptr<Inh | |||
| 172 | } | 172 | } |
| 173 | 173 | ||
| 174 | for (const auto& inheritedType: inheritedTypes) { | 174 | for (const auto& inheritedType: inheritedTypes) { |
| 175 | - auto inheritedDecl = GetInheritedDeclFromType(inheritedType->GetTy()); | 175 | + auto inheritedDecl = GetInheritedDeclFromType(inheritedType->GetTy().Ty()); |
| 176 | if (!inheritedDecl || !inheritedType->GetTy()) { | 176 | if (!inheritedDecl || !inheritedType->GetTy()) { |
| 177 | continue; | 177 | continue; |
| 178 | } | 178 | } |
| 179 | 179 | ||
| 180 | - auto originalDetail = ResolveType(inheritedDecl->GetTy()); | 180 | + auto originalDetail = ResolveType(inheritedDecl->GetTy().Ty()); |
| 181 | if (!originalDetail) { | 181 | if (!originalDetail) { |
| 182 | continue; | 182 | continue; |
| 183 | } | 183 | } |
| 184 | 184 | ||
| 185 | - auto newDetail = ResolveType(inheritedType->GetTy()); | 185 | + auto newDetail = ResolveType(inheritedType->GetTy().Ty()); |
| 186 | ApplyReplace(newDetail, replace); | 186 | ApplyReplace(newDetail, replace); |
| 187 | std::unordered_map<std::string, std::string> myReplace; | 187 | std::unordered_map<std::string, std::string> myReplace; |
| 188 | originalDetail->Diff(newDetail, myReplace); | 188 | originalDetail->Diff(newDetail, myReplace); |
Mcangjie-language-server/src/languageserver/capabilities/overrideMethods/FindOverrideMethodsUtils.cpp+8-8
| @@ -133,7 +133,7 @@ std::unique_ptr<ClassLikeTypeDetail> ResolveGenericType(const T &t) | |||
| 133 | detail->identifier = t.decl->identifier; | 133 | detail->identifier = t.decl->identifier; |
| 134 | if (t.decl->generic) { | 134 | if (t.decl->generic) { |
| 135 | for (const auto &tyArg : t.typeArgs) { | 135 | for (const auto &tyArg : t.typeArgs) { |
| 136 | - detail->generics.emplace_back(ResolveType(tyArg)); | 136 | + detail->generics.emplace_back(ResolveType(tyArg.Ty())); |
| 137 | } | 137 | } |
| 138 | } | 138 | } |
| 139 | return detail; | 139 | return detail; |
| @@ -143,9 +143,9 @@ std::unique_ptr<FuncLikeTypeDetail> ResolveFuncType(const FuncTy& ty) | |||
| 143 | { | 143 | { |
| 144 | auto detail = std::make_unique<FuncLikeTypeDetail>(); | 144 | auto detail = std::make_unique<FuncLikeTypeDetail>(); |
| 145 | for (const auto& paramTy: ty.paramTys) { | 145 | for (const auto& paramTy: ty.paramTys) { |
| 146 | - detail->params.emplace_back(ResolveType(paramTy)); | 146 | + detail->params.emplace_back(ResolveType(paramTy.Ty())); |
| 147 | } | 147 | } |
| 148 | - detail->ret = ResolveType(ty.retTy); | 148 | + detail->ret = ResolveType(ty.retTy.Ty()); |
| 149 | return detail; | 149 | return detail; |
| 150 | } | 150 | } |
| 151 | 151 | ||
| @@ -156,7 +156,7 @@ std::unique_ptr<VArrayTypeDetail> ResolveVarrayType(const VArrayTy& ty) | |||
| 156 | return detail; | 156 | return detail; |
| 157 | } | 157 | } |
| 158 | detail->identifier = ty.name; | 158 | detail->identifier = ty.name; |
| 159 | - detail->tyArg = ResolveType(ty.typeArgs[0]); | 159 | + detail->tyArg = ResolveType(ty.typeArgs[0].Ty()); |
| 160 | detail->size = ty.size; | 160 | detail->size = ty.size; |
| 161 | return detail; | 161 | return detail; |
| 162 | } | 162 | } |
| @@ -165,7 +165,7 @@ std::unique_ptr<TupleTypeDetail> ResolveTupleType(const TupleTy& ty) | |||
| 165 | { | 165 | { |
| 166 | auto detail = std::make_unique<TupleTypeDetail>(); | 166 | auto detail = std::make_unique<TupleTypeDetail>(); |
| 167 | for (auto& typeArg: ty.typeArgs) { | 167 | for (auto& typeArg: ty.typeArgs) { |
| 168 | - detail->params.emplace_back(ResolveType(typeArg)); | 168 | + detail->params.emplace_back(ResolveType(typeArg.Ty())); |
| 169 | } | 169 | } |
| 170 | return detail; | 170 | return detail; |
| 171 | } | 171 | } |
| @@ -253,7 +253,7 @@ FuncParamDetailList ResolveFuncParamList(const Ptr<FuncDecl>& funcDecl) | |||
| 253 | continue; | 253 | continue; |
| 254 | } | 254 | } |
| 255 | paramDetail.identifier = identifier; | 255 | paramDetail.identifier = identifier; |
| 256 | - paramDetail.type = ResolveType(param->GetTy()); | 256 | + paramDetail.type = ResolveType(param->GetTy().Ty()); |
| 257 | params.isVariadic = paramList->variadicArgIndex > 0; | 257 | params.isVariadic = paramList->variadicArgIndex > 0; |
| 258 | params.params.emplace_back(std::move(paramDetail)); | 258 | params.params.emplace_back(std::move(paramDetail)); |
| 259 | } | 259 | } |
| @@ -271,7 +271,7 @@ std::unique_ptr<TypeDetail> ResolveFuncRetType(const Ptr<FuncDecl>& funcDecl) | |||
| 271 | if (!type) { | 271 | if (!type) { |
| 272 | return {}; | 272 | return {}; |
| 273 | } | 273 | } |
| 274 | - return ResolveType(type->GetTy()); | 274 | + return ResolveType(type->GetTy().Ty()); |
| 275 | } | 275 | } |
| 276 | 276 | ||
| 277 | FuncDetail ResolveFuncDetail(const Ptr<FuncDecl>& funcDecl) | 277 | FuncDetail ResolveFuncDetail(const Ptr<FuncDecl>& funcDecl) |
| @@ -290,7 +290,7 @@ PropDetail ResolvePropDetail(const Ptr<PropDecl>& propDecl) | |||
| 290 | PropDetail detail; | 290 | PropDetail detail; |
| 291 | detail.modifiers = ResolveDeclModifiers(propDecl); | 291 | detail.modifiers = ResolveDeclModifiers(propDecl); |
| 292 | detail.identifier = ResolveDeclIdentifier(propDecl); | 292 | detail.identifier = ResolveDeclIdentifier(propDecl); |
| 293 | - detail.type = ResolveType(propDecl->GetTy()); | 293 | + detail.type = ResolveType(propDecl->GetTy().Ty()); |
| 294 | return detail; | 294 | return detail; |
| 295 | } | 295 | } |
| 296 | } // namespace ark | 296 | } // namespace ark |
| @@ -384,6 +384,7 @@ Ptr<Block> TweakUtils::GetSymbolBlock(AST::Symbol &symbol, Range &range) | |||
| 384 | auto funcDecl = DynamicCast<FuncDecl>(symbol.node); | 384 | auto funcDecl = DynamicCast<FuncDecl>(symbol.node); |
| 385 | return DealFuncDecl(funcDecl, range); | 385 | return DealFuncDecl(funcDecl, range); |
| 386 | } | 386 | } |
| 387 | + case Cangjie::AST::ASTKind::EXCLAVE_EXPR: | ||
| 387 | default: | 388 | default: |
| 388 | return nullptr; | 389 | return nullptr; |
| 389 | } | 390 | } |
| @@ -55,6 +55,7 @@ bool IsRefLoop(const Symbol& sym, const Node& self) | |||
| 55 | case ASTKind::FUNC_DECL: | 55 | case ASTKind::FUNC_DECL: |
| 56 | case ASTKind::LAMBDA_EXPR: | 56 | case ASTKind::LAMBDA_EXPR: |
| 57 | return VisitAction::SKIP_CHILDREN; | 57 | return VisitAction::SKIP_CHILDREN; |
| 58 | + case ASTKind::EXCLAVE_EXPR: | ||
| 58 | default: | 59 | default: |
| 59 | return VisitAction::WALK_CHILDREN; | 60 | return VisitAction::WALK_CHILDREN; |
| 60 | } | 61 | } |
| @@ -360,7 +360,7 @@ static std::string GetEnumDefaultInitializer(const Tweak::Selection &sel, const | |||
| 360 | if (!selectedExpr || !selectedExpr->GetTy()) { | 360 | if (!selectedExpr || !selectedExpr->GetTy()) { |
| 361 | return ""; | 361 | return ""; |
| 362 | } | 362 | } |
| 363 | - auto enumDecl = GetEnumDeclFromTy(selectedExpr->GetTy()); | 363 | + auto enumDecl = GetEnumDeclFromTy(selectedExpr->GetTy().Ty()); |
| 364 | if (!enumDecl || enumDecl->constructors.empty() || !enumDecl->constructors.front()) { | 364 | if (!enumDecl || enumDecl->constructors.empty() || !enumDecl->constructors.front()) { |
| 365 | return ""; | 365 | return ""; |
| 366 | } | 366 | } |
| @@ -359,7 +359,7 @@ class IntroduceParameterRule : public TweakRule { | |||
| 359 | std::to_string(static_cast<int>(IntroduceParameter::IntroduceParameterError::INVALID_TYPE)))); | 359 | std::to_string(static_cast<int>(IntroduceParameter::IntroduceParameterError::INVALID_TYPE)))); |
| 360 | return false; | 360 | return false; |
| 361 | } | 361 | } |
| 362 | - if (selectedExpr && IntroducedParameterTypeBreaksPublicSignature(*funcDecl, selectedExpr->GetTy())) { | 362 | + if (selectedExpr && IntroducedParameterTypeBreaksPublicSignature(*funcDecl, selectedExpr->GetTy().Ty())) { |
| 363 | extraOptions.insert(std::make_pair("ErrorCode", | 363 | extraOptions.insert(std::make_pair("ErrorCode", |
| 364 | std::to_string(static_cast<int>( | 364 | std::to_string(static_cast<int>( |
| 365 | IntroduceParameter::IntroduceParameterError::PUBLIC_DECL_USES_NON_PUBLIC_TYPE)))); | 365 | IntroduceParameter::IntroduceParameterError::PUBLIC_DECL_USES_NON_PUBLIC_TYPE)))); |
| @@ -528,7 +528,7 @@ int SignatureHelpImpl::GetFuncNameIndex() const | |||
| 528 | return -1; | 528 | return -1; |
| 529 | } | 529 | } |
| 530 | 530 | ||
| 531 | -void SignatureHelpImpl::FindFuncDeclByDeclType(Ptr<Ty> declTy, const std::string& funcName) | 531 | +void SignatureHelpImpl::FindFuncDeclByDeclType(Cangjie::AST::DataTy declTy, const std::string& funcName) |
| 532 | { | 532 | { |
| 533 | auto id = Ty::GetDeclPtrOfTy<InheritableDecl>(declTy); | 533 | auto id = Ty::GetDeclPtrOfTy<InheritableDecl>(declTy); |
| 534 | if (!id) { return; } | 534 | if (!id) { return; } |
| @@ -547,7 +547,7 @@ void SignatureHelpImpl::FindFuncDeclByDeclType(Ptr<Ty> declTy, const std::string | |||
| 547 | auto inheritableDecl = DynamicCast<InheritableDecl>(id); | 547 | auto inheritableDecl = DynamicCast<InheritableDecl>(id); |
| 548 | if (!inheritableDecl) { return; } | 548 | if (!inheritableDecl) { return; } |
| 549 | auto extendMembers = CompilerCangjieProject::GetInstance()->GetAllVisibleExtendMembers( | 549 | auto extendMembers = CompilerCangjieProject::GetInstance()->GetAllVisibleExtendMembers( |
| 550 | - declTy, packageNameForPath, *ast->file); | 550 | + Cangjie::AST::ModalTy{declTy}, packageNameForPath, *ast->file); |
| 551 | for (auto &decl : extendMembers) { | 551 | for (auto &decl : extendMembers) { |
| 552 | // LCOV_EXCL_START | 552 | // LCOV_EXCL_START |
| 553 | // Make sure extend has access | 553 | // Make sure extend has access |
| @@ -41,7 +41,7 @@ private: | |||
| 41 | 41 | ||
| 42 | void FindFunDeclByNode(Cangjie::AST::Node &node); | 42 | void FindFunDeclByNode(Cangjie::AST::Node &node); |
| 43 | 43 | ||
| 44 | - void FindFuncDeclByDeclType(Ptr<Cangjie::AST::Ty> declTy, const std::string& funcName); | 44 | + void FindFuncDeclByDeclType(Cangjie::AST::DataTy declTy, const std::string& funcName); |
| 45 | 45 | ||
| 46 | void FillingDeclsInPackage(std::string &packageName, const std::string &funcName, | 46 | void FillingDeclsInPackage(std::string &packageName, const std::string &funcName, |
| 47 | const Cangjie::AST::Node &curNode); | 47 | const Cangjie::AST::Node &curNode); |
| @@ -87,7 +87,7 @@ void DealTypeAliasDecl(Ptr<Decl> &decl) | |||
| 87 | if (ark::Is<Cangjie::AST::TypeAliasDecl>(decl.get())) { | 87 | if (ark::Is<Cangjie::AST::TypeAliasDecl>(decl.get())) { |
| 88 | auto typeAliasDecl = dynamic_cast<const TypeAliasDecl*>(decl.get()); | 88 | auto typeAliasDecl = dynamic_cast<const TypeAliasDecl*>(decl.get()); |
| 89 | if (!typeAliasDecl || !typeAliasDecl->type) { return; } | 89 | if (!typeAliasDecl || !typeAliasDecl->type) { return; } |
| 90 | - decl = ItemResolverUtil::GetDeclByTy(typeAliasDecl->type->GetTy()); | 90 | + decl = ItemResolverUtil::GetDeclByTy(typeAliasDecl->type->GetTy().get()); |
| 91 | } | 91 | } |
| 92 | } | 92 | } |
| 93 | 93 | ||
| @@ -151,6 +151,7 @@ CompletionItemKind ItemResolverUtil::ResolveKindByASTKind(Cangjie::AST::ASTKind | |||
| 151 | return CompletionItemKind::CIK_VARIABLE; | 151 | return CompletionItemKind::CIK_VARIABLE; |
| 152 | case Cangjie::AST::ASTKind::MACRO_EXPAND_DECL: | 152 | case Cangjie::AST::ASTKind::MACRO_EXPAND_DECL: |
| 153 | return CompletionItemKind::CIK_METHOD; | 153 | return CompletionItemKind::CIK_METHOD; |
| 154 | + case Cangjie::AST::ASTKind::THIS_PARAM: | ||
| 154 | default: | 155 | default: |
| 155 | return CompletionItemKind::CIK_MISSING; | 156 | return CompletionItemKind::CIK_MISSING; |
| 156 | } | 157 | } |
| @@ -593,7 +594,7 @@ void ItemResolverUtil::ResolveVarDeclDetail(std::string &detail, const Cangjie:: | |||
| 593 | detail += ": "; | 594 | detail += ": "; |
| 594 | detail += ResolveTypeSignature(*decl.type); | 595 | detail += ResolveTypeSignature(*decl.type); |
| 595 | } else { | 596 | } else { |
| 596 | - GetDetailByTy(decl.GetTy(), detail); | 597 | + GetDetailByTy(decl.GetTy().get(), detail); |
| 597 | } | 598 | } |
| 598 | return; | 599 | return; |
| 599 | } | 600 | } |
| @@ -1787,7 +1788,7 @@ std::string ItemResolverUtil::GetTypeString(const Cangjie::AST::Type &type) | |||
| 1787 | [](const RefType &type) { | 1788 | [](const RefType &type) { |
| 1788 | if (type.GetTy() && type.TyKind() == Cangjie::AST::TypeKind::TYPE_VARRAY && !type.typeArguments.empty()) { | 1789 | if (type.GetTy() && type.TyKind() == Cangjie::AST::TypeKind::TYPE_VARRAY && !type.typeArguments.empty()) { |
| 1789 | auto paramType = type.typeArguments.begin()->get(); | 1790 | auto paramType = type.typeArguments.begin()->get(); |
| 1790 | - auto varrayTy = DynamicCast<VArrayTy>(type.GetTy()); | 1791 | + auto varrayTy = DynamicCast<VArrayTy>(type.GetTy().Ty()); |
| 1791 | if (!varrayTy || !paramType) { | 1792 | if (!varrayTy || !paramType) { |
| 1792 | return type.ref.identifier.Val(); | 1793 | return type.ref.identifier.Val(); |
| 1793 | } | 1794 | } |
| @@ -48,7 +48,7 @@ TypeCompatibility CheckTypeCompatibility(const Ty *lvalue, const Ty *rvalue) | |||
| 48 | } | 48 | } |
| 49 | auto ret = TypeCompatibility::IDENTICAL; | 49 | auto ret = TypeCompatibility::IDENTICAL; |
| 50 | for (size_t i = 0; i < ltuple->typeArgs.size(); i++) { | 50 | for (size_t i = 0; i < ltuple->typeArgs.size(); i++) { |
| 51 | - auto res = CheckTypeCompatibility(ltuple->typeArgs[i], rtuple->typeArgs[i]); | 51 | + auto res = CheckTypeCompatibility(ltuple->typeArgs[i].get(), rtuple->typeArgs[i].get()); |
| 52 | if (res == TypeCompatibility::INCOMPATIBLE) { | 52 | if (res == TypeCompatibility::INCOMPATIBLE) { |
| 53 | return res; | 53 | return res; |
| 54 | } | 54 | } |
| @@ -88,7 +88,8 @@ bool IsFuncParameterTypesIdentical(const FuncTy &t1, const FuncTy &t2) | |||
| 88 | if (t1.paramTys.size() == t2.paramTys.size()) { | 88 | if (t1.paramTys.size() == t2.paramTys.size()) { |
| 89 | result = true; | 89 | result = true; |
| 90 | for (size_t i = 0; i < t2.paramTys.size(); i++) { | 90 | for (size_t i = 0; i < t2.paramTys.size(); i++) { |
| 91 | - result = result && (CheckTypeCompatibility(t1.paramTys[i], t2.paramTys[i]) == TypeCompatibility::IDENTICAL); | 91 | + result = result && |
| 92 | + (CheckTypeCompatibility(t1.paramTys[i].get(), t2.paramTys[i].get()) == TypeCompatibility::IDENTICAL); | ||
| 92 | } | 93 | } |
| 93 | } | 94 | } |
| 94 | 95 | ||
| @@ -254,7 +255,7 @@ CommentKind GetCommentKind(const std::string &comment) | |||
| 254 | return CommentKind::NO_COMMENT; | 255 | return CommentKind::NO_COMMENT; |
| 255 | } | 256 | } |
| 256 | 257 | ||
| 257 | -std::string PrintTypeArgs(std::vector<Ptr<Ty>> tyArgs, const std::pair<bool, int> isVarray) | 258 | +std::string PrintTypeArgs(std::vector<DataTy> tyArgs, const std::pair<bool, int> isVarray) |
| 258 | { | 259 | { |
| 259 | if (tyArgs.empty()) { | 260 | if (tyArgs.empty()) { |
| 260 | return ""; | 261 | return ""; |
| @@ -295,7 +296,7 @@ std::string GetString(const Ty &ty) | |||
| 295 | if (vArrayTy) { | 296 | if (vArrayTy) { |
| 296 | isVArray = {true, vArrayTy->size}; | 297 | isVArray = {true, vArrayTy->size}; |
| 297 | } | 298 | } |
| 298 | - return ty.name.empty() ? ty.String() : ty.name + PrintTypeArgs(ty.typeArgs, isVArray); | 299 | + return ty.name.empty() ? ty.String() : ty.name + PrintTypeArgs(ty.TyArgs(), isVArray); |
| 299 | } | 300 | } |
| 300 | 301 | ||
| 301 | std::string ReplaceTuple(const std::string &type) | 302 | std::string ReplaceTuple(const std::string &type) |
| @@ -353,7 +354,7 @@ std::string GetVarDeclType(Ptr<VarDecl> decl, SourceManager *sourceManager) | |||
| 353 | if (decl->type) { | 354 | if (decl->type) { |
| 354 | type = ItemResolverUtil::ResolveTypeSignature(*decl->type); | 355 | type = ItemResolverUtil::ResolveTypeSignature(*decl->type); |
| 355 | } else { | 356 | } else { |
| 356 | - ItemResolverUtil::GetDetailByTy(decl->GetTy(), type, true); | 357 | + ItemResolverUtil::GetDetailByTy(decl->GetTy().get(), type, true); |
| 357 | } | 358 | } |
| 358 | std::string realType = ReplaceTuple(type); | 359 | std::string realType = ReplaceTuple(type); |
| 359 | type = realType.empty() ? type : realType; | 360 | type = realType.empty() ? type : realType; |
| @@ -436,7 +437,7 @@ bool IsFuncSignatureIdentical(const Cangjie::AST::FuncDecl &funcDecl1, const Can | |||
| 436 | auto funcTy1 = dynamic_cast<FuncTy *>(funcDecl1.GetTy().get()); | 437 | auto funcTy1 = dynamic_cast<FuncTy *>(funcDecl1.GetTy().get()); |
| 437 | auto funcTy2 = dynamic_cast<FuncTy *>(funcDecl2.GetTy().get()); | 438 | auto funcTy2 = dynamic_cast<FuncTy *>(funcDecl2.GetTy().get()); |
| 438 | if (!funcTy1 || !funcTy2 || !IsFuncParameterTypesIdentical(*funcTy1, *funcTy2) || | 439 | if (!funcTy1 || !funcTy2 || !IsFuncParameterTypesIdentical(*funcTy1, *funcTy2) || |
| 439 | - !(CheckTypeCompatibility(funcTy1->retTy, funcTy2->retTy) == TypeCompatibility::IDENTICAL)) { | 440 | + !(CheckTypeCompatibility(funcTy1->retTy.get(), funcTy2->retTy.get()) == TypeCompatibility::IDENTICAL)) { |
| 440 | return false; | 441 | return false; |
| 441 | } | 442 | } |
| 442 | return true; | 443 | return true; |
| @@ -58,7 +58,7 @@ void MatchBracket(const std::string &type, size_t &index, int &count); | |||
| 58 | 58 | ||
| 59 | std::string GetVarDeclType(Ptr<VarDecl> decl, SourceManager *sourceManager); | 59 | std::string GetVarDeclType(Ptr<VarDecl> decl, SourceManager *sourceManager); |
| 60 | 60 | ||
| 61 | -std::string PrintTypeArgs(std::vector<Ptr<Cangjie::AST::Ty>> tyArgs, const std::pair<bool, int> isVarray = {false, 0}); | 61 | +std::string PrintTypeArgs(std::vector<Cangjie::AST::DataTy> tyArgs, const std::pair<bool, int> isVarray = {false, 0}); |
| 62 | 62 | ||
| 63 | CommentKind GetCommentKind(const std::string &comment); | 63 | CommentKind GetCommentKind(const std::string &comment); |
| 64 | 64 | ||
| @@ -288,7 +288,7 @@ inline bool IsLocalFuncOrLambda(const AST::Decl& decl) | |||
| 288 | 288 | ||
| 289 | lsp::SymbolID GetSymbolId(const Decl &decl); | 289 | lsp::SymbolID GetSymbolId(const Decl &decl); |
| 290 | 290 | ||
| 291 | -inline std::string GetPrimaryTypeIdentifier(const Ptr<Ty> ty) | 291 | +inline std::string GetPrimaryTypeIdentifier(const DataTy ty) |
| 292 | { | 292 | { |
| 293 | if (!ty || ty->IsPrimitive()) { | 293 | if (!ty || ty->IsPrimitive()) { |
| 294 | return ""; | 294 | return ""; |
| @@ -76,7 +76,7 @@ Ptr<Decl> GetRealDecl(Ptr<Decl> decl) | |||
| 76 | return decl; | 76 | return decl; |
| 77 | } | 77 | } |
| 78 | 78 | ||
| 79 | -TypeSubst GenerateTypeMapping(Ptr<const Generic> generic, const std::vector<Ptr<Ty>> &typeArgs) | 79 | +TypeSubst GenerateTypeMapping(Ptr<const Generic> generic, const std::vector<DataTy> &typeArgs) |
| 80 | { | 80 | { |
| 81 | TypeSubst mapping; | 81 | TypeSubst mapping; |
| 82 | if (!generic || generic->typeParameters.size() != typeArgs.size()) { | 82 | if (!generic || generic->typeParameters.size() != typeArgs.size()) { |
| @@ -84,7 +84,7 @@ TypeSubst GenerateTypeMapping(Ptr<const Generic> generic, const std::vector<Ptr< | |||
| 84 | } | 84 | } |
| 85 | for (size_t i = 0; i < typeArgs.size(); ++i) { | 85 | for (size_t i = 0; i < typeArgs.size(); ++i) { |
| 86 | if (Ty::IsTyCorrect(generic->typeParameters[i]->GetTy()) && Ty::IsTyCorrect(typeArgs[i])) { | 86 | if (Ty::IsTyCorrect(generic->typeParameters[i]->GetTy()) && Ty::IsTyCorrect(typeArgs[i])) { |
| 87 | - if (auto genParam = DynamicCast<GenericsTy*>(generic->typeParameters[i]->GetTy())) { | 87 | + if (auto genParam = DynamicCast<GenericsTy*>(generic->typeParameters[i]->GetTy().get())) { |
| 88 | mapping[genParam] = typeArgs[i]; | 88 | mapping[genParam] = typeArgs[i]; |
| 89 | } | 89 | } |
| 90 | } | 90 | } |
| @@ -1303,7 +1303,7 @@ void SymbolCollector::CreateExtend(const Decl &decl, const std::string &filePath | |||
| 1303 | if (target) { | 1303 | if (target) { |
| 1304 | symbolID = GetDeclSymbolID(*target); | 1304 | symbolID = GetDeclSymbolID(*target); |
| 1305 | } else { | 1305 | } else { |
| 1306 | - symbolID = GetPrimaryTypeSymbolId(extendDecl->extendedType->GetTy()); | 1306 | + symbolID = GetPrimaryTypeSymbolId(extendDecl->extendedType->GetTy().Ty()); |
| 1307 | } | 1307 | } |
| 1308 | auto fullPackageName = extendDecl->fullPackageName; | 1308 | auto fullPackageName = extendDecl->fullPackageName; |
| 1309 | std::vector<ExtendInfo> extendVec; | 1309 | std::vector<ExtendInfo> extendVec; |
| @@ -2032,8 +2032,8 @@ Ptr<Decl> SymbolCollector::FindOverriddenMember(const Decl &member, const Inheri | |||
| 2032 | *static_cast<FuncDecl *>(it.get()), *static_cast<const FuncDecl *>(&member)); | 2032 | *static_cast<FuncDecl *>(it.get()), *static_cast<const FuncDecl *>(&member)); |
| 2033 | memberTy = tyMgr.GetInstantiatedTy(memberTy, mapping); | 2033 | memberTy = tyMgr.GetInstantiatedTy(memberTy, mapping); |
| 2034 | } | 2034 | } |
| 2035 | - if (tyMgr.IsFuncParameterTypesIdentical(*StaticCast<FuncTy *>(memberTy), | 2035 | + if (tyMgr.IsFuncParameterTypesIdentical(*StaticCast<FuncTy *>(memberTy.Ty()), |
| 2036 | - *StaticCast<FuncTy *>(member.GetTy()))) { | 2036 | + *StaticCast<FuncTy *>(member.GetTy().Ty()))) { |
| 2037 | found = it; | 2037 | found = it; |
| 2038 | break; | 2038 | break; |
| 2039 | } | 2039 | } |
| @@ -2060,7 +2060,7 @@ Ptr<Decl> SymbolCollector::FindOverriddenMemberFromSuperClass(const Decl &member | |||
| 2060 | } | 2060 | } |
| 2061 | sd = StaticCast<ClassDecl *>(Ty::GetDeclPtrOfTy(it->GetTy())); | 2061 | sd = StaticCast<ClassDecl *>(Ty::GetDeclPtrOfTy(it->GetTy())); |
| 2062 | CJC_NULLPTR_CHECK(sd); // When ty is class and correct, sd must be non-null. | 2062 | CJC_NULLPTR_CHECK(sd); // When ty is class and correct, sd must be non-null. |
| 2063 | - typeMapping.merge(GenerateTypeMapping(sd->GetGeneric(), it->GetTy()->typeArgs)); | 2063 | + typeMapping.merge(GenerateTypeMapping(sd->GetGeneric(), it->GetTy()->TyArgs())); |
| 2064 | if (auto parent = FindOverriddenMember(member, *sd, typeMapping, condition)) { | 2064 | if (auto parent = FindOverriddenMember(member, *sd, typeMapping, condition)) { |
| 2065 | return parent; | 2065 | return parent; |
| 2066 | } | 2066 | } |
| @@ -2095,7 +2095,7 @@ std::vector<Ptr<Decl>> SymbolCollector::FindImplMemberFromInterface(const Decl & | |||
| 2095 | continue; | 2095 | continue; |
| 2096 | } | 2096 | } |
| 2097 | auto currentMapping = | 2097 | auto currentMapping = |
| 2098 | - GenerateTypeMapping(interfaceDecl->GetGeneric(), it->GetTy()->typeArgs); | 2098 | + GenerateTypeMapping(interfaceDecl->GetGeneric(), it->GetTy()->TyArgs()); |
| 2099 | currentMapping.insert(mapping.begin(), mapping.end()); | 2099 | currentMapping.insert(mapping.begin(), mapping.end()); |
| 2100 | if (auto found = | 2100 | if (auto found = |
| 2101 | FindOverriddenMember(member, *interfaceDecl, currentMapping, condition)) { | 2101 | FindOverriddenMember(member, *interfaceDecl, currentMapping, condition)) { |
| @@ -71,7 +71,7 @@ public: | |||
| 71 | astMap = std::move(arkAstMap); | 71 | astMap = std::move(arkAstMap); |
| 72 | } | 72 | } |
| 73 | 73 | ||
| 74 | - SymbolID GetPrimaryTypeSymbolId(const Ptr<Ty> ty) | 74 | + SymbolID GetPrimaryTypeSymbolId(const DataTy ty) |
| 75 | { | 75 | { |
| 76 | if (!ty || !ty->IsPrimitive()) { | 76 | if (!ty || !ty->IsPrimitive()) { |
| 77 | return INVALID_SYMBOL_ID; | 77 | return INVALID_SYMBOL_ID; |
| @@ -739,7 +739,7 @@ namespace test::common { | |||
| 739 | // 3 times | 739 | // 3 times |
| 740 | const int maxRetries = 3; | 740 | const int maxRetries = 3; |
| 741 | // 3 min timeout | 741 | // 3 min timeout |
| 742 | - const int timeout = 1 * 180; | 742 | + const int timeout = 1 * 1800000; |
| 743 | bool success = false; | 743 | bool success = false; |
| 744 | 744 | ||
| 745 | while (retryCount < maxRetries && !success) { | 745 | while (retryCount < maxRetries && !success) { |
| @@ -1 +1 @@ | |||
| 1 | -{"id":6,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public static let Max: Int64","documentation":"","filterText":"Max","insertText":"Max","insertTextFormat":1,"kind":6,"label":"Max","sortText":""},{"deprecated":false,"detail":"public static let Min: Int64","documentation":"","filterText":"Min","insertText":"Min","insertTextFormat":1,"kind":6,"label":"Min","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Arbitrary<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"arbitrary","insertText":"arbitrary(${1:random: RandomSource})","insertTextFormat":2,"kind":2,"label":"arbitrary(random: RandomSource)","sortText":""},{"additionalTextEdits":[{"newText":"import std.math.MaxMinValue<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.math","documentation":"","filterText":"getMax","insertText":"getMax()","insertTextFormat":1,"kind":2,"label":"getMax()","sortText":""},{"additionalTextEdits":[{"newText":"import std.math.MaxMinValue<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.math","documentation":"","filterText":"getMin","insertText":"getMin()","insertTextFormat":1,"kind":2,"label":"getMin()","sortText":""},{"additionalTextEdits":[{"newText":"import std.math.Integer<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.math","documentation":"","filterText":"isSigned","insertText":"isSigned()","insertTextFormat":1,"kind":2,"label":"isSigned()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.ArbitraryRange<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"max","insertText":"max()","insertTextFormat":1,"kind":2,"label":"max()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.ArbitraryRange<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"min","insertText":"min()","insertTextFormat":1,"kind":2,"label":"min()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"parse","insertText":"parse","insertTextFormat":1,"kind":2,"label":"parse","sortText":""},{"deprecated":false,"detail":"public static func parse(data: String): Int64","documentation":"","filterText":"parse","insertText":"parse(${1:data: String})","insertTextFormat":2,"kind":2,"label":"parse(data: String)","sortText":""},{"deprecated":false,"detail":"public static func parse(value: String, radix!: Int64): Int64","documentation":"","filterText":"parse","insertText":"parse(${1:value: String}, radix: ${2:Int64})","insertTextFormat":2,"kind":2,"label":"parse(value: String, radix!: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"readBigEndian","insertText":"readBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"readBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"readLittleEndian","insertText":"readLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"readLittleEndian(buffer: Array<Byte>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"tryParse","insertText":"tryParse","insertTextFormat":1,"kind":2,"label":"tryParse","sortText":""},{"deprecated":false,"detail":"public static func tryParse(data: String): Option<Int64>","documentation":"","filterText":"tryParse","insertText":"tryParse(${1:data: String})","insertTextFormat":2,"kind":2,"label":"tryParse(data: String)","sortText":""},{"deprecated":false,"detail":"public static func tryParse(value: String, radix!: Int64): Option<Int64>","documentation":"","filterText":"tryParse","insertText":"tryParse(${1:value: String}, radix: ${2:Int64})","insertTextFormat":2,"kind":2,"label":"tryParse(value: String, radix!: Int64)","sortText":""}]} | 1 | +{"id":6,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public static let Max: Int64","documentation":"","filterText":"Max","insertText":"Max","insertTextFormat":1,"kind":6,"label":"Max","sortText":""},{"deprecated":false,"detail":"public static let Min: Int64","documentation":"","filterText":"Min","insertText":"Min","insertTextFormat":1,"kind":6,"label":"Min","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Arbitrary<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"arbitrary","insertText":"arbitrary(${1:random: RandomSource})","insertTextFormat":2,"kind":2,"label":"arbitrary(random: RandomSource)","sortText":""},{"additionalTextEdits":[{"newText":"import std.math.MaxMinValue<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.math","documentation":"","filterText":"getMax","insertText":"getMax()","insertTextFormat":1,"kind":2,"label":"getMax()","sortText":""},{"additionalTextEdits":[{"newText":"import std.math.MaxMinValue<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.math","documentation":"","filterText":"getMin","insertText":"getMin()","insertTextFormat":1,"kind":2,"label":"getMin()","sortText":""},{"additionalTextEdits":[{"newText":"import std.math.Integer<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.math","documentation":"","filterText":"isSigned","insertText":"isSigned()","insertTextFormat":1,"kind":2,"label":"isSigned()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.ArbitraryRange<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"max","insertText":"max()","insertTextFormat":1,"kind":2,"label":"max()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.ArbitraryRange<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"min","insertText":"min()","insertTextFormat":1,"kind":2,"label":"min()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"parse","insertText":"parse","insertTextFormat":1,"kind":2,"label":"parse","sortText":""},{"deprecated":false,"detail":"public static func parse(data: String): Int64","documentation":"","filterText":"parse","insertText":"parse(${1:data: String})","insertTextFormat":2,"kind":2,"label":"parse(data: String)","sortText":""},{"deprecated":false,"detail":"public static func parse(value: String): T","documentation":"","filterText":"parse","insertText":"parse(${1:value: String})","insertTextFormat":2,"kind":2,"label":"parse(value: String)","sortText":""},{"deprecated":false,"detail":"public static func parse(value: String, radix!: Int64): Int64","documentation":"","filterText":"parse","insertText":"parse(${1:value: String}, radix: ${2:Int64})","insertTextFormat":2,"kind":2,"label":"parse(value: String, radix!: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"readBigEndian","insertText":"readBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"readBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":9},"start":{"character":0,"line":9}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"readLittleEndian","insertText":"readLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"readLittleEndian(buffer: Array<Byte>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"tryParse","insertText":"tryParse","insertTextFormat":1,"kind":2,"label":"tryParse","sortText":""},{"deprecated":false,"detail":"public static func tryParse(data: String): Option<Int64>","documentation":"","filterText":"tryParse","insertText":"tryParse(${1:data: String})","insertTextFormat":2,"kind":2,"label":"tryParse(data: String)","sortText":""},{"deprecated":false,"detail":"public static func tryParse(value: String, radix!: Int64): Option<Int64>","documentation":"","filterText":"tryParse","insertText":"tryParse(${1:value: String}, radix: ${2:Int64})","insertTextFormat":2,"kind":2,"label":"tryParse(value: String, radix!: Int64)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":14,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public interface Any","documentation":"","filterText":"Any","insertText":"Any","insertTextFormat":1,"kind":8,"label":"Any","sortText":""},{"deprecated":false,"detail":"public struct Array<T>","documentation":"","filterText":"Array","insertText":"Array<${1:T}>","insertTextFormat":2,"kind":22,"label":"Array<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>()","insertTextFormat":2,"kind":3,"label":"Array<T>()","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, ${4:initElement: (Int64) -> T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, repeat!: T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, repeat: ${4:T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, repeat!: T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<T>(${3:size: Int64}) { arg1: Int64 => ${4:T} }","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64) { Int64 => T }","sortText":""},{"deprecated":false,"detail":"public class ArrayIterator<T> <: Iterator<T>","documentation":"","filterText":"ArrayIterator","insertText":"ArrayIterator<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayIterator<T>","sortText":""},{"deprecated":false,"detail":"public func init(data: Array<T>)","documentation":"","filterText":"ArrayIterator<T>","insertText":"ArrayIterator<${1:T}>(${3:data: Array<T>})","insertTextFormat":2,"kind":3,"label":"ArrayIterator<T>(data: Array<T>)","sortText":""},{"deprecated":false,"detail":"public type Byte = UInt8","documentation":"","filterText":"Byte","insertText":"Byte","insertTextFormat":1,"kind":7,"label":"Byte","sortText":""},{"deprecated":false,"detail":"public sealed open interface CType","documentation":"","filterText":"CType","insertText":"CType","insertTextFormat":1,"kind":8,"label":"CType","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OutOfMemoryError <: Error","documentation":"","filterText":"OutOfMemoryError","insertText":"OutOfMemoryError","insertTextFormat":1,"kind":7,"label":"OutOfMemoryError","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData","insertTextFormat":1,"kind":2,"label":"acquireArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func acquireArrayRawData<T>(arr: Array<T>): CPointerHandle<T>","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData<${1:T}>(${3:arr: Array<T>})","insertTextFormat":2,"kind":2,"label":"acquireArrayRawData<T>(arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"let howManyHours: Int64 = match (r1) {\n case Year => 365 * 24\n case Month => 30 * 24\n case Day => 24\n case Hour1 => 1\n}","documentation":"","filterText":"howManyHours","insertText":"howManyHours","insertTextFormat":1,"kind":6,"label":"howManyHours","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData","insertTextFormat":1,"kind":2,"label":"releaseArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func releaseArrayRawData<T>(handle: CPointerHandle<T>): Unit","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData<${1:T}>(${3:handle: CPointerHandle<T>})","insertTextFormat":2,"kind":2,"label":"releaseArrayRawData<T>(handle: CPointerHandle<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"VArray","insertText":"VArray","insertTextFormat":1,"kind":14,"label":"VArray","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"type","insertText":"type","insertTextFormat":1,"kind":14,"label":"type","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"try","insertText":"try","insertTextFormat":1,"kind":14,"label":"try","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"finally","insertText":"finally","insertTextFormat":1,"kind":14,"label":"finally","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"try {}","documentation":"","filterText":"try","insertText":"try {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"try {}","sortText":""},{"deprecated":false,"detail":"finally {}","documentation":"","filterText":"finally","insertText":"finally {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"finally {}","sortText":""},{"deprecated":false,"detail":"type newName = originalName","documentation":"","filterText":"type","insertText":"type ${1:newName} = ${0:originalName}","insertTextFormat":2,"kind":14,"label":"type newName = originalName","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(${0:initElement: (Int64) -> T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(repeat!: T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(repeat: ${0:T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(repeat!: T)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ArrayList\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"ArrayList","insertText":"ArrayList<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayList<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.ConfigurationKey\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"ConfigurationKey","insertText":"ConfigurationKey","insertTextFormat":1,"kind":7,"label":"ConfigurationKey","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataStrategy\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataStrategy","insertText":"DataStrategy<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataStrategy<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyFor\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyFor","insertText":"KeyFor<${1:T}>","insertTextFormat":2,"kind":8,"label":"KeyFor<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyTags\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyTags","insertText":"KeyTags","insertTextFormat":1,"kind":22,"label":"KeyTags","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Arbitrary\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Arbitrary","insertText":"Arbitrary<${1:T}>","insertTextFormat":2,"kind":8,"label":"Arbitrary<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} | 1 | +{"id":14,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public interface Any","documentation":"","filterText":"Any","insertText":"Any","insertTextFormat":1,"kind":8,"label":"Any","sortText":""},{"deprecated":false,"detail":"public struct Array<T>","documentation":"","filterText":"Array","insertText":"Array<${1:T}>","insertTextFormat":2,"kind":22,"label":"Array<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>()","insertTextFormat":2,"kind":3,"label":"Array<T>()","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, ${4:initElement: (Int64) -> T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, repeat!: T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, repeat: ${4:T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, repeat!: T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<T>(${3:size: Int64}) { arg1: Int64 => ${4:T} }","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64) { Int64 => T }","sortText":""},{"deprecated":false,"detail":"public class ArrayIterator<T> <: Iterator<T>","documentation":"","filterText":"ArrayIterator","insertText":"ArrayIterator<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayIterator<T>","sortText":""},{"deprecated":false,"detail":"public func init(data: Array<T>)","documentation":"","filterText":"ArrayIterator<T>","insertText":"ArrayIterator<${1:T}>(${3:data: Array<T>})","insertTextFormat":2,"kind":3,"label":"ArrayIterator<T>(data: Array<T>)","sortText":""},{"deprecated":false,"detail":"public type Byte = UInt8","documentation":"","filterText":"Byte","insertText":"Byte","insertTextFormat":1,"kind":7,"label":"Byte","sortText":""},{"deprecated":false,"detail":"public sealed open interface CType","documentation":"","filterText":"CType","insertText":"CType","insertTextFormat":1,"kind":8,"label":"CType","sortText":""},{"deprecated":false,"detail":"public sealed open interface Copyable","documentation":"","filterText":"Copyable","insertText":"Copyable","insertTextFormat":1,"kind":8,"label":"Copyable","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OutOfMemoryError <: Error","documentation":"","filterText":"OutOfMemoryError","insertText":"OutOfMemoryError","insertTextFormat":1,"kind":7,"label":"OutOfMemoryError","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData","insertTextFormat":1,"kind":2,"label":"acquireArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func acquireArrayRawData<T>(arr: Array<T>): CPointerHandle<T>","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData<${1:T}>(${3:arr: Array<T>})","insertTextFormat":2,"kind":2,"label":"acquireArrayRawData<T>(arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"let howManyHours: Int64 = match (r1) {\n case Year => 365 * 24\n case Month => 30 * 24\n case Day => 24\n case Hour1 => 1\n}","documentation":"","filterText":"howManyHours","insertText":"howManyHours","insertTextFormat":1,"kind":6,"label":"howManyHours","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData","insertTextFormat":1,"kind":2,"label":"releaseArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func releaseArrayRawData<T>(handle: CPointerHandle<T>): Unit","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData<${1:T}>(${3:handle: CPointerHandle<T>})","insertTextFormat":2,"kind":2,"label":"releaseArrayRawData<T>(handle: CPointerHandle<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"VArray","insertText":"VArray","insertTextFormat":1,"kind":14,"label":"VArray","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"type","insertText":"type","insertTextFormat":1,"kind":14,"label":"type","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"try","insertText":"try","insertTextFormat":1,"kind":14,"label":"try","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"finally","insertText":"finally","insertTextFormat":1,"kind":14,"label":"finally","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"try {}","documentation":"","filterText":"try","insertText":"try {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"try {}","sortText":""},{"deprecated":false,"detail":"finally {}","documentation":"","filterText":"finally","insertText":"finally {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"finally {}","sortText":""},{"deprecated":false,"detail":"type newName = originalName","documentation":"","filterText":"type","insertText":"type ${1:newName} = ${0:originalName}","insertTextFormat":2,"kind":14,"label":"type newName = originalName","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(${0:initElement: (Int64) -> T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(repeat!: T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(repeat: ${0:T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(repeat!: T)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ArrayList\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"ArrayList","insertText":"ArrayList<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayList<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.ConfigurationKey\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"ConfigurationKey","insertText":"ConfigurationKey","insertTextFormat":1,"kind":7,"label":"ConfigurationKey","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataStrategy\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataStrategy","insertText":"DataStrategy<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataStrategy<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyFor\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyFor","insertText":"KeyFor<${1:T}>","insertTextFormat":2,"kind":8,"label":"KeyFor<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyTags\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyTags","insertText":"KeyTags","insertTextFormat":1,"kind":22,"label":"KeyTags","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Arbitrary\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Arbitrary","insertText":"Arbitrary<${1:T}>","insertTextFormat":2,"kind":8,"label":"Arbitrary<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":10,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"","documentation":"","filterText":"clone","insertText":"clone","insertTextFormat":1,"kind":2,"label":"clone","sortText":""},{"deprecated":false,"detail":"public func clone(): String","documentation":"","filterText":"clone","insertText":"clone()","insertTextFormat":1,"kind":2,"label":"clone()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public abstract func compare(other: T): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: T})","insertTextFormat":2,"kind":2,"label":"compare(other: T)","sortText":""},{"deprecated":false,"detail":"public func compare(str: String): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:str: String})","insertTextFormat":2,"kind":2,"label":"compare(str: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"contains","insertText":"contains","insertTextFormat":1,"kind":2,"label":"contains","sortText":""},{"deprecated":false,"detail":"public func contains(str: String): Bool","documentation":"","filterText":"contains","insertText":"contains(${1:str: String})","insertTextFormat":2,"kind":2,"label":"contains(str: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"count","insertText":"count","insertTextFormat":1,"kind":2,"label":"count","sortText":""},{"deprecated":false,"detail":"public func count(str: String): Int64","documentation":"","filterText":"count","insertText":"count(${1:str: String})","insertTextFormat":2,"kind":2,"label":"count(str: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"endsWith","insertText":"endsWith","insertTextFormat":1,"kind":2,"label":"endsWith","sortText":""},{"deprecated":false,"detail":"public func endsWith(suffix: String): Bool","documentation":"","filterText":"endsWith","insertText":"endsWith(${1:suffix: String})","insertTextFormat":2,"kind":2,"label":"endsWith(suffix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"equalsIgnoreAsciiCase","insertText":"equalsIgnoreAsciiCase","insertTextFormat":1,"kind":2,"label":"equalsIgnoreAsciiCase","sortText":""},{"deprecated":false,"detail":"public func equalsIgnoreAsciiCase(other: String): Bool","documentation":"","filterText":"equalsIgnoreAsciiCase","insertText":"equalsIgnoreAsciiCase(${1:other: String})","insertTextFormat":2,"kind":2,"label":"equalsIgnoreAsciiCase(other: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"get","insertText":"get","insertTextFormat":1,"kind":2,"label":"get","sortText":""},{"deprecated":false,"detail":"public func get(index: Int64): Option<Byte>","documentation":"","filterText":"get","insertText":"get(${1:index: Int64})","insertTextFormat":2,"kind":2,"label":"get(index: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.diff.AssertPrintable<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unittest.diff","documentation":"","filterText":"hasNestedDiff","insertText":"hasNestedDiff","insertTextFormat":1,"kind":0,"label":"hasNestedDiff","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"indexOf","insertText":"indexOf","insertTextFormat":1,"kind":2,"label":"indexOf","sortText":""},{"deprecated":false,"detail":"public func indexOf(b: Byte): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:b: Byte})","insertTextFormat":2,"kind":2,"label":"indexOf(b: Byte)","sortText":""},{"deprecated":false,"detail":"public func indexOf(b: Byte, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:b: Byte}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"indexOf(b: Byte, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"public func indexOf(str: String): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:str: String})","insertTextFormat":2,"kind":2,"label":"indexOf(str: String)","sortText":""},{"deprecated":false,"detail":"public func indexOf(str: String, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:str: String}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"indexOf(str: String, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAscii","insertText":"isAscii","insertTextFormat":1,"kind":2,"label":"isAscii","sortText":""},{"deprecated":false,"detail":"public func isAscii(): Bool","documentation":"","filterText":"isAscii","insertText":"isAscii()","insertTextFormat":1,"kind":2,"label":"isAscii()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiBlank","insertText":"isAsciiBlank","insertTextFormat":1,"kind":2,"label":"isAsciiBlank","sortText":""},{"deprecated":false,"detail":"public func isAsciiBlank(): Bool","documentation":"","filterText":"isAsciiBlank","insertText":"isAsciiBlank()","insertTextFormat":1,"kind":2,"label":"isAsciiBlank()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isBlank","insertText":"isBlank()","insertTextFormat":1,"kind":2,"label":"isBlank()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isEmpty","insertText":"isEmpty","insertTextFormat":1,"kind":2,"label":"isEmpty","sortText":""},{"deprecated":false,"detail":"public func isEmpty(): Bool","documentation":"","filterText":"isEmpty","insertText":"isEmpty()","insertTextFormat":1,"kind":2,"label":"isEmpty()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"iterator","insertText":"iterator","insertTextFormat":1,"kind":2,"label":"iterator","sortText":""},{"deprecated":false,"detail":"public func iterator(): Iterator<Byte>","documentation":"","filterText":"iterator","insertText":"iterator()","insertTextFormat":1,"kind":2,"label":"iterator()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf","insertTextFormat":1,"kind":2,"label":"lastIndexOf","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(b: Byte): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:b: Byte})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(b: Byte)","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(b: Byte, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:b: Byte}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(b: Byte, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(str: String): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:str: String})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(str: String)","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(str: String, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:str: String}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(str: String, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"lazySplit","insertText":"lazySplit","insertTextFormat":1,"kind":2,"label":"lazySplit","sortText":""},{"deprecated":false,"detail":"public func lazySplit(str: String, maxSplits: Int64, removeEmpty!: Bool = false): Iterator<String>","documentation":"","filterText":"lazySplit","insertText":"lazySplit(${1:str: String}, ${2:maxSplits: Int64}, removeEmpty: ${3:Bool = false})","insertTextFormat":2,"kind":2,"label":"lazySplit(str: String, maxSplits: Int64, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func lazySplit(str: String, removeEmpty!: Bool = false): Iterator<String>","documentation":"","filterText":"lazySplit","insertText":"lazySplit(${1:str: String}, removeEmpty: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"lazySplit(str: String, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"lines","insertText":"lines","insertTextFormat":1,"kind":2,"label":"lines","sortText":""},{"deprecated":false,"detail":"public func lines(): Iterator<String>","documentation":"","filterText":"lines","insertText":"lines()","insertTextFormat":1,"kind":2,"label":"lines()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"padEnd","insertText":"padEnd","insertTextFormat":1,"kind":2,"label":"padEnd","sortText":""},{"deprecated":false,"detail":"public func padEnd(totalWidth: Int64, padding!: String = \" \"): String","documentation":"","filterText":"padEnd","insertText":"padEnd(${1:totalWidth: Int64}, padding: ${2:String = \" \"})","insertTextFormat":2,"kind":2,"label":"padEnd(totalWidth: Int64, padding!: String = \" \")","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"padStart","insertText":"padStart","insertTextFormat":1,"kind":2,"label":"padStart","sortText":""},{"deprecated":false,"detail":"public func padStart(totalWidth: Int64, padding!: String = \" \"): String","documentation":"","filterText":"padStart","insertText":"padStart(${1:totalWidth: Int64}, padding: ${2:String = \" \"})","insertTextFormat":2,"kind":2,"label":"padStart(totalWidth: Int64, padding!: String = \" \")","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"rawData","insertText":"rawData","insertTextFormat":1,"kind":2,"label":"rawData","sortText":""},{"deprecated":false,"detail":"public unsafe func rawData(): Array<Byte>","documentation":"","filterText":"rawData","insertText":"rawData()","insertTextFormat":1,"kind":2,"label":"rawData()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"removePrefix","insertText":"removePrefix","insertTextFormat":1,"kind":2,"label":"removePrefix","sortText":""},{"deprecated":false,"detail":"public func removePrefix(prefix: String): String","documentation":"","filterText":"removePrefix","insertText":"removePrefix(${1:prefix: String})","insertTextFormat":2,"kind":2,"label":"removePrefix(prefix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"removeSuffix","insertText":"removeSuffix","insertTextFormat":1,"kind":2,"label":"removeSuffix","sortText":""},{"deprecated":false,"detail":"public func removeSuffix(suffix: String): String","documentation":"","filterText":"removeSuffix","insertText":"removeSuffix(${1:suffix: String})","insertTextFormat":2,"kind":2,"label":"removeSuffix(suffix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"replace","insertText":"replace","insertTextFormat":1,"kind":2,"label":"replace","sortText":""},{"deprecated":false,"detail":"public func replace(old: String, new: String): String","documentation":"","filterText":"replace","insertText":"replace(${1:old: String}, ${2:new: String})","insertTextFormat":2,"kind":2,"label":"replace(old: String, new: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"runes","insertText":"runes","insertTextFormat":1,"kind":2,"label":"runes","sortText":""},{"deprecated":false,"detail":"public func runes(): Iterator<Rune>","documentation":"","filterText":"runes","insertText":"runes()","insertTextFormat":1,"kind":2,"label":"runes()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"public let size: Int64","documentation":"","filterText":"size","insertText":"size","insertTextFormat":1,"kind":6,"label":"size","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"split","insertText":"split","insertTextFormat":1,"kind":2,"label":"split","sortText":""},{"deprecated":false,"detail":"public func split(str: String, maxSplits: Int64, removeEmpty!: Bool = false): Array<String>","documentation":"","filterText":"split","insertText":"split(${1:str: String}, ${2:maxSplits: Int64}, removeEmpty: ${3:Bool = false})","insertTextFormat":2,"kind":2,"label":"split(str: String, maxSplits: Int64, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func split(str: String, removeEmpty!: Bool = false): Array<String>","documentation":"","filterText":"split","insertText":"split(${1:str: String}, removeEmpty: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"split(str: String, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"startsWith","insertText":"startsWith","insertTextFormat":1,"kind":2,"label":"startsWith","sortText":""},{"deprecated":false,"detail":"public func startsWith(prefix: String): Bool","documentation":"","filterText":"startsWith","insertText":"startsWith(${1:prefix: String})","insertTextFormat":2,"kind":2,"label":"startsWith(prefix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toArray","insertText":"toArray","insertTextFormat":1,"kind":2,"label":"toArray","sortText":""},{"deprecated":false,"detail":"public func toArray(): Array<Byte>","documentation":"","filterText":"toArray","insertText":"toArray()","insertTextFormat":1,"kind":2,"label":"toArray()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiLower","insertText":"toAsciiLower","insertTextFormat":1,"kind":2,"label":"toAsciiLower","sortText":""},{"deprecated":false,"detail":"public func toAsciiLower(): String","documentation":"","filterText":"toAsciiLower","insertText":"toAsciiLower()","insertTextFormat":1,"kind":2,"label":"toAsciiLower()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiTitle","insertText":"toAsciiTitle","insertTextFormat":1,"kind":2,"label":"toAsciiTitle","sortText":""},{"deprecated":false,"detail":"public func toAsciiTitle(): String","documentation":"","filterText":"toAsciiTitle","insertText":"toAsciiTitle()","insertTextFormat":1,"kind":2,"label":"toAsciiTitle()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiUpper","insertText":"toAsciiUpper","insertTextFormat":1,"kind":2,"label":"toAsciiUpper","sortText":""},{"deprecated":false,"detail":"public func toAsciiUpper(): String","documentation":"","filterText":"toAsciiUpper","insertText":"toAsciiUpper()","insertTextFormat":1,"kind":2,"label":"toAsciiUpper()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLower","insertText":"toLower()","insertTextFormat":1,"kind":2,"label":"toLower()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLower","insertText":"toLower(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toLower(opt: CasingOption)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toRuneArray","insertText":"toRuneArray","insertTextFormat":1,"kind":2,"label":"toRuneArray","sortText":""},{"deprecated":false,"detail":"public func toRuneArray(): Array<Rune>","documentation":"","filterText":"toRuneArray","insertText":"toRuneArray()","insertTextFormat":1,"kind":2,"label":"toRuneArray()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitle","insertText":"toTitle()","insertTextFormat":1,"kind":2,"label":"toTitle()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitle","insertText":"toTitle(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toTitle(opt: CasingOption)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpper","insertText":"toUpper()","insertTextFormat":1,"kind":2,"label":"toUpper()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpper","insertText":"toUpper(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toUpper(opt: CasingOption)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"trim","insertText":"trim()","insertTextFormat":1,"kind":2,"label":"trim()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimAscii","insertText":"trimAscii","insertTextFormat":1,"kind":2,"label":"trimAscii","sortText":""},{"deprecated":false,"detail":"public func trimAscii(): String","documentation":"","filterText":"trimAscii","insertText":"trimAscii()","insertTextFormat":1,"kind":2,"label":"trimAscii()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimAsciiEnd","insertText":"trimAsciiEnd","insertTextFormat":1,"kind":2,"label":"trimAsciiEnd","sortText":""},{"deprecated":false,"detail":"public func trimAsciiEnd(): String","documentation":"","filterText":"trimAsciiEnd","insertText":"trimAsciiEnd()","insertTextFormat":1,"kind":2,"label":"trimAsciiEnd()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimAsciiStart","insertText":"trimAsciiStart","insertTextFormat":1,"kind":2,"label":"trimAsciiStart","sortText":""},{"deprecated":false,"detail":"public func trimAsciiStart(): String","documentation":"","filterText":"trimAsciiStart","insertText":"trimAsciiStart()","insertTextFormat":1,"kind":2,"label":"trimAsciiStart()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimEnd","insertText":"trimEnd","insertTextFormat":1,"kind":2,"label":"trimEnd","sortText":""},{"deprecated":false,"detail":"public func trimEnd(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd { arg1: Rune => ${1:Bool} }","insertTextFormat":2,"kind":2,"label":"trimEnd { Rune => Bool }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"trimEnd","insertText":"trimEnd()","insertTextFormat":1,"kind":2,"label":"trimEnd()","sortText":""},{"deprecated":false,"detail":"public func trimEnd(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd(${1:predicate: (Rune) -> Bool})","insertTextFormat":2,"kind":2,"label":"trimEnd(predicate: (Rune) -> Bool)","sortText":""},{"deprecated":false,"detail":"public func trimEnd(set: Array<Rune>): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd(${1:set: Array<Rune>})","insertTextFormat":2,"kind":2,"label":"trimEnd(set: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public func trimEnd(set: String): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd(${1:set: String})","insertTextFormat":2,"kind":2,"label":"trimEnd(set: String)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":true,"detail":"import std.unicode","documentation":"","filterText":"trimLeft","insertText":"trimLeft()","insertTextFormat":1,"kind":2,"label":"trimLeft()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":true,"detail":"import std.unicode","documentation":"","filterText":"trimRight","insertText":"trimRight()","insertTextFormat":1,"kind":2,"label":"trimRight()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimStart","insertText":"trimStart","insertTextFormat":1,"kind":2,"label":"trimStart","sortText":""},{"deprecated":false,"detail":"public func trimStart(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimStart","insertText":"trimStart { arg1: Rune => ${1:Bool} }","insertTextFormat":2,"kind":2,"label":"trimStart { Rune => Bool }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"trimStart","insertText":"trimStart()","insertTextFormat":1,"kind":2,"label":"trimStart()","sortText":""},{"deprecated":false,"detail":"public func trimStart(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimStart","insertText":"trimStart(${1:predicate: (Rune) -> Bool})","insertTextFormat":2,"kind":2,"label":"trimStart(predicate: (Rune) -> Bool)","sortText":""},{"deprecated":false,"detail":"public func trimStart(set: Array<Rune>): String","documentation":"","filterText":"trimStart","insertText":"trimStart(${1:set: Array<Rune>})","insertTextFormat":2,"kind":2,"label":"trimStart(set: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public func trimStart(set: String): String","documentation":"","filterText":"trimStart","insertText":"trimStart(${1:set: String})","insertTextFormat":2,"kind":2,"label":"trimStart(set: String)","sortText":""}]} | 1 | +{"id":10,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"","documentation":"","filterText":"clone","insertText":"clone","insertTextFormat":1,"kind":2,"label":"clone","sortText":""},{"deprecated":false,"detail":"public func clone(): String","documentation":"","filterText":"clone","insertText":"clone()","insertTextFormat":1,"kind":2,"label":"clone()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public abstract func compare(other: T): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: T})","insertTextFormat":2,"kind":2,"label":"compare(other: T)","sortText":""},{"deprecated":false,"detail":"public func compare(str: String): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:str: String})","insertTextFormat":2,"kind":2,"label":"compare(str: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"contains","insertText":"contains","insertTextFormat":1,"kind":2,"label":"contains","sortText":""},{"deprecated":false,"detail":"public func contains(str: String): Bool","documentation":"","filterText":"contains","insertText":"contains(${1:str: String})","insertTextFormat":2,"kind":2,"label":"contains(str: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"count","insertText":"count","insertTextFormat":1,"kind":2,"label":"count","sortText":""},{"deprecated":false,"detail":"public func count(str: String): Int64","documentation":"","filterText":"count","insertText":"count(${1:str: String})","insertTextFormat":2,"kind":2,"label":"count(str: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"endsWith","insertText":"endsWith","insertTextFormat":1,"kind":2,"label":"endsWith","sortText":""},{"deprecated":false,"detail":"public func endsWith(suffix: String): Bool","documentation":"","filterText":"endsWith","insertText":"endsWith(${1:suffix: String})","insertTextFormat":2,"kind":2,"label":"endsWith(suffix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"equalsIgnoreAsciiCase","insertText":"equalsIgnoreAsciiCase","insertTextFormat":1,"kind":2,"label":"equalsIgnoreAsciiCase","sortText":""},{"deprecated":false,"detail":"public func equalsIgnoreAsciiCase(other: String): Bool","documentation":"","filterText":"equalsIgnoreAsciiCase","insertText":"equalsIgnoreAsciiCase(${1:other: String})","insertTextFormat":2,"kind":2,"label":"equalsIgnoreAsciiCase(other: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"get","insertText":"get","insertTextFormat":1,"kind":2,"label":"get","sortText":""},{"deprecated":false,"detail":"public func get(index: Int64): Option<Byte>","documentation":"","filterText":"get","insertText":"get(${1:index: Int64})","insertTextFormat":2,"kind":2,"label":"get(index: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.diff.AssertPrintable<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unittest.diff","documentation":"","filterText":"hasNestedDiff","insertText":"hasNestedDiff","insertTextFormat":1,"kind":0,"label":"hasNestedDiff","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"indexOf","insertText":"indexOf","insertTextFormat":1,"kind":2,"label":"indexOf","sortText":""},{"deprecated":false,"detail":"public func indexOf(b: Byte): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:b: Byte})","insertTextFormat":2,"kind":2,"label":"indexOf(b: Byte)","sortText":""},{"deprecated":false,"detail":"public func indexOf(b: Byte, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:b: Byte}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"indexOf(b: Byte, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"public func indexOf(str: String): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:str: String})","insertTextFormat":2,"kind":2,"label":"indexOf(str: String)","sortText":""},{"deprecated":false,"detail":"public func indexOf(str: String, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"indexOf","insertText":"indexOf(${1:str: String}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"indexOf(str: String, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAscii","insertText":"isAscii","insertTextFormat":1,"kind":2,"label":"isAscii","sortText":""},{"deprecated":false,"detail":"public func isAscii(): Bool","documentation":"","filterText":"isAscii","insertText":"isAscii()","insertTextFormat":1,"kind":2,"label":"isAscii()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiBlank","insertText":"isAsciiBlank","insertTextFormat":1,"kind":2,"label":"isAsciiBlank","sortText":""},{"deprecated":false,"detail":"public func isAsciiBlank(): Bool","documentation":"","filterText":"isAsciiBlank","insertText":"isAsciiBlank()","insertTextFormat":1,"kind":2,"label":"isAsciiBlank()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isBlank","insertText":"isBlank()","insertTextFormat":1,"kind":2,"label":"isBlank()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isEmpty","insertText":"isEmpty","insertTextFormat":1,"kind":2,"label":"isEmpty","sortText":""},{"deprecated":false,"detail":"public func isEmpty(): Bool","documentation":"","filterText":"isEmpty","insertText":"isEmpty()","insertTextFormat":1,"kind":2,"label":"isEmpty()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"iterator","insertText":"iterator","insertTextFormat":1,"kind":2,"label":"iterator","sortText":""},{"deprecated":false,"detail":"public func iterator(): Iterator<Byte>","documentation":"","filterText":"iterator","insertText":"iterator()","insertTextFormat":1,"kind":2,"label":"iterator()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf","insertTextFormat":1,"kind":2,"label":"lastIndexOf","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(b: Byte): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:b: Byte})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(b: Byte)","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(b: Byte, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:b: Byte}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(b: Byte, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(str: String): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:str: String})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(str: String)","sortText":""},{"deprecated":false,"detail":"public func lastIndexOf(str: String, fromIndex: Int64): Option<Int64>","documentation":"","filterText":"lastIndexOf","insertText":"lastIndexOf(${1:str: String}, ${2:fromIndex: Int64})","insertTextFormat":2,"kind":2,"label":"lastIndexOf(str: String, fromIndex: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"lazySplit","insertText":"lazySplit","insertTextFormat":1,"kind":2,"label":"lazySplit","sortText":""},{"deprecated":false,"detail":"public func lazySplit(str: String, maxSplits: Int64, removeEmpty!: Bool = false): Iterator<String>","documentation":"","filterText":"lazySplit","insertText":"lazySplit(${1:str: String}, ${2:maxSplits: Int64}, removeEmpty: ${3:Bool = false})","insertTextFormat":2,"kind":2,"label":"lazySplit(str: String, maxSplits: Int64, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func lazySplit(str: String, removeEmpty!: Bool = false): Iterator<String>","documentation":"","filterText":"lazySplit","insertText":"lazySplit(${1:str: String}, removeEmpty: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"lazySplit(str: String, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"lines","insertText":"lines","insertTextFormat":1,"kind":2,"label":"lines","sortText":""},{"deprecated":false,"detail":"public func lines(): Iterator<String>","documentation":"","filterText":"lines","insertText":"lines()","insertTextFormat":1,"kind":2,"label":"lines()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"padEnd","insertText":"padEnd","insertTextFormat":1,"kind":2,"label":"padEnd","sortText":""},{"deprecated":false,"detail":"public func padEnd(totalWidth: Int64, padding!: String = \" \"): String","documentation":"","filterText":"padEnd","insertText":"padEnd(${1:totalWidth: Int64}, padding: ${2:String = \" \"})","insertTextFormat":2,"kind":2,"label":"padEnd(totalWidth: Int64, padding!: String = \" \")","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"padStart","insertText":"padStart","insertTextFormat":1,"kind":2,"label":"padStart","sortText":""},{"deprecated":false,"detail":"public func padStart(totalWidth: Int64, padding!: String = \" \"): String","documentation":"","filterText":"padStart","insertText":"padStart(${1:totalWidth: Int64}, padding: ${2:String = \" \"})","insertTextFormat":2,"kind":2,"label":"padStart(totalWidth: Int64, padding!: String = \" \")","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"rawData","insertText":"rawData","insertTextFormat":1,"kind":2,"label":"rawData","sortText":""},{"deprecated":false,"detail":"public unsafe func rawData(): Array<Byte>","documentation":"","filterText":"rawData","insertText":"rawData()","insertTextFormat":1,"kind":2,"label":"rawData()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"removePrefix","insertText":"removePrefix","insertTextFormat":1,"kind":2,"label":"removePrefix","sortText":""},{"deprecated":false,"detail":"public func removePrefix(prefix: String): String","documentation":"","filterText":"removePrefix","insertText":"removePrefix(${1:prefix: String})","insertTextFormat":2,"kind":2,"label":"removePrefix(prefix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"removeSuffix","insertText":"removeSuffix","insertTextFormat":1,"kind":2,"label":"removeSuffix","sortText":""},{"deprecated":false,"detail":"public func removeSuffix(suffix: String): String","documentation":"","filterText":"removeSuffix","insertText":"removeSuffix(${1:suffix: String})","insertTextFormat":2,"kind":2,"label":"removeSuffix(suffix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"replace","insertText":"replace","insertTextFormat":1,"kind":2,"label":"replace","sortText":""},{"deprecated":false,"detail":"public func replace(old: String, new: String): String","documentation":"","filterText":"replace","insertText":"replace(${1:old: String}, ${2:new: String})","insertTextFormat":2,"kind":2,"label":"replace(old: String, new: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"runes","insertText":"runes","insertTextFormat":1,"kind":2,"label":"runes","sortText":""},{"deprecated":false,"detail":"public func runes(): Iterator<Rune>","documentation":"","filterText":"runes","insertText":"runes()","insertTextFormat":1,"kind":2,"label":"runes()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"public let size: Int64","documentation":"","filterText":"size","insertText":"size","insertTextFormat":1,"kind":6,"label":"size","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"split","insertText":"split","insertTextFormat":1,"kind":2,"label":"split","sortText":""},{"deprecated":false,"detail":"public func split(str: String, maxSplits: Int64, removeEmpty!: Bool = false): Array<String>","documentation":"","filterText":"split","insertText":"split(${1:str: String}, ${2:maxSplits: Int64}, removeEmpty: ${3:Bool = false})","insertTextFormat":2,"kind":2,"label":"split(str: String, maxSplits: Int64, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func split(str: String, removeEmpty!: Bool = false): Array<String>","documentation":"","filterText":"split","insertText":"split(${1:str: String}, removeEmpty: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"split(str: String, removeEmpty!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"startsWith","insertText":"startsWith","insertTextFormat":1,"kind":2,"label":"startsWith","sortText":""},{"deprecated":false,"detail":"public func startsWith(prefix: String): Bool","documentation":"","filterText":"startsWith","insertText":"startsWith(${1:prefix: String})","insertTextFormat":2,"kind":2,"label":"startsWith(prefix: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toArray","insertText":"toArray","insertTextFormat":1,"kind":2,"label":"toArray","sortText":""},{"deprecated":false,"detail":"public func toArray(): Array<Byte>","documentation":"","filterText":"toArray","insertText":"toArray()","insertTextFormat":1,"kind":2,"label":"toArray()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiLower","insertText":"toAsciiLower","insertTextFormat":1,"kind":2,"label":"toAsciiLower","sortText":""},{"deprecated":false,"detail":"public func toAsciiLower(): String","documentation":"","filterText":"toAsciiLower","insertText":"toAsciiLower()","insertTextFormat":1,"kind":2,"label":"toAsciiLower()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiTitle","insertText":"toAsciiTitle","insertTextFormat":1,"kind":2,"label":"toAsciiTitle","sortText":""},{"deprecated":false,"detail":"public func toAsciiTitle(): String","documentation":"","filterText":"toAsciiTitle","insertText":"toAsciiTitle()","insertTextFormat":1,"kind":2,"label":"toAsciiTitle()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiUpper","insertText":"toAsciiUpper","insertTextFormat":1,"kind":2,"label":"toAsciiUpper","sortText":""},{"deprecated":false,"detail":"public func toAsciiUpper(): String","documentation":"","filterText":"toAsciiUpper","insertText":"toAsciiUpper()","insertTextFormat":1,"kind":2,"label":"toAsciiUpper()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toHeap","insertText":"toHeap","insertTextFormat":1,"kind":2,"label":"toHeap","sortText":""},{"deprecated":false,"detail":"public func toHeap(): String","documentation":"","filterText":"toHeap","insertText":"toHeap()","insertTextFormat":1,"kind":2,"label":"toHeap()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toLocal","insertText":"toLocal","insertTextFormat":1,"kind":2,"label":"toLocal","sortText":""},{"deprecated":false,"detail":"public func toLocal(): String","documentation":"","filterText":"toLocal","insertText":"toLocal()","insertTextFormat":1,"kind":2,"label":"toLocal()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLower","insertText":"toLower()","insertTextFormat":1,"kind":2,"label":"toLower()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLower","insertText":"toLower(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toLower(opt: CasingOption)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toRuneArray","insertText":"toRuneArray","insertTextFormat":1,"kind":2,"label":"toRuneArray","sortText":""},{"deprecated":false,"detail":"public func toRuneArray(): Array<Rune>","documentation":"","filterText":"toRuneArray","insertText":"toRuneArray()","insertTextFormat":1,"kind":2,"label":"toRuneArray()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitle","insertText":"toTitle()","insertTextFormat":1,"kind":2,"label":"toTitle()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitle","insertText":"toTitle(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toTitle(opt: CasingOption)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpper","insertText":"toUpper()","insertTextFormat":1,"kind":2,"label":"toUpper()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpper","insertText":"toUpper(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toUpper(opt: CasingOption)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"trim","insertText":"trim()","insertTextFormat":1,"kind":2,"label":"trim()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimAscii","insertText":"trimAscii","insertTextFormat":1,"kind":2,"label":"trimAscii","sortText":""},{"deprecated":false,"detail":"public func trimAscii(): String","documentation":"","filterText":"trimAscii","insertText":"trimAscii()","insertTextFormat":1,"kind":2,"label":"trimAscii()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimAsciiEnd","insertText":"trimAsciiEnd","insertTextFormat":1,"kind":2,"label":"trimAsciiEnd","sortText":""},{"deprecated":false,"detail":"public func trimAsciiEnd(): String","documentation":"","filterText":"trimAsciiEnd","insertText":"trimAsciiEnd()","insertTextFormat":1,"kind":2,"label":"trimAsciiEnd()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimAsciiStart","insertText":"trimAsciiStart","insertTextFormat":1,"kind":2,"label":"trimAsciiStart","sortText":""},{"deprecated":false,"detail":"public func trimAsciiStart(): String","documentation":"","filterText":"trimAsciiStart","insertText":"trimAsciiStart()","insertTextFormat":1,"kind":2,"label":"trimAsciiStart()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimEnd","insertText":"trimEnd","insertTextFormat":1,"kind":2,"label":"trimEnd","sortText":""},{"deprecated":false,"detail":"public func trimEnd(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd { arg1: Rune => ${1:Bool} }","insertTextFormat":2,"kind":2,"label":"trimEnd { Rune => Bool }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"trimEnd","insertText":"trimEnd()","insertTextFormat":1,"kind":2,"label":"trimEnd()","sortText":""},{"deprecated":false,"detail":"public func trimEnd(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd(${1:predicate: (Rune) -> Bool})","insertTextFormat":2,"kind":2,"label":"trimEnd(predicate: (Rune) -> Bool)","sortText":""},{"deprecated":false,"detail":"public func trimEnd(set: Array<Rune>): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd(${1:set: Array<Rune>})","insertTextFormat":2,"kind":2,"label":"trimEnd(set: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public func trimEnd(set: String): String","documentation":"","filterText":"trimEnd","insertText":"trimEnd(${1:set: String})","insertTextFormat":2,"kind":2,"label":"trimEnd(set: String)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":true,"detail":"import std.unicode","documentation":"","filterText":"trimLeft","insertText":"trimLeft()","insertTextFormat":1,"kind":2,"label":"trimLeft()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":true,"detail":"import std.unicode","documentation":"","filterText":"trimRight","insertText":"trimRight()","insertTextFormat":1,"kind":2,"label":"trimRight()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"trimStart","insertText":"trimStart","insertTextFormat":1,"kind":2,"label":"trimStart","sortText":""},{"deprecated":false,"detail":"public func trimStart(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimStart","insertText":"trimStart { arg1: Rune => ${1:Bool} }","insertTextFormat":2,"kind":2,"label":"trimStart { Rune => Bool }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeStringExtension\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"trimStart","insertText":"trimStart()","insertTextFormat":1,"kind":2,"label":"trimStart()","sortText":""},{"deprecated":false,"detail":"public func trimStart(predicate: (Rune) -> Bool): String","documentation":"","filterText":"trimStart","insertText":"trimStart(${1:predicate: (Rune) -> Bool})","insertTextFormat":2,"kind":2,"label":"trimStart(predicate: (Rune) -> Bool)","sortText":""},{"deprecated":false,"detail":"public func trimStart(set: Array<Rune>): String","documentation":"","filterText":"trimStart","insertText":"trimStart(${1:set: Array<Rune>})","insertTextFormat":2,"kind":2,"label":"trimStart(set: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public func trimStart(set: String): String","documentation":"","filterText":"trimStart","insertText":"trimStart(${1:set: String})","insertTextFormat":2,"kind":2,"label":"trimStart(set: String)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":10,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingDec","insertText":"carryingDec()","insertTextFormat":1,"kind":2,"label":"carryingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingInc","insertText":"carryingInc()","insertTextFormat":1,"kind":2,"label":"carryingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingNeg","insertText":"carryingNeg()","insertTextFormat":1,"kind":2,"label":"carryingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingPow","insertText":"carryingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShl","insertText":"carryingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShr","insertText":"carryingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedDec","insertText":"checkedDec()","insertTextFormat":1,"kind":2,"label":"checkedDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedInc","insertText":"checkedInc()","insertTextFormat":1,"kind":2,"label":"checkedInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedNeg","insertText":"checkedNeg()","insertTextFormat":1,"kind":2,"label":"checkedNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedPow","insertText":"checkedPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShl","insertText":"checkedShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShr","insertText":"checkedShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Int64): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Int64})","insertTextFormat":2,"kind":2,"label":"compare(other: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.Formattable\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"format","insertText":"format(${1:fmt: String})","insertTextFormat":2,"kind":2,"label":"format(fmt: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Int64","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingDec","insertText":"saturatingDec()","insertTextFormat":1,"kind":2,"label":"saturatingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingInc","insertText":"saturatingInc()","insertTextFormat":1,"kind":2,"label":"saturatingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingNeg","insertText":"saturatingNeg()","insertTextFormat":1,"kind":2,"label":"saturatingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingPow","insertText":"saturatingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShl","insertText":"saturatingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShr","insertText":"saturatingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.SwapEndianOrder<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"swapBytes","insertText":"swapBytes()","insertTextFormat":1,"kind":2,"label":"swapBytes()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingDec","insertText":"throwingDec()","insertTextFormat":1,"kind":2,"label":"throwingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingInc","insertText":"throwingInc()","insertTextFormat":1,"kind":2,"label":"throwingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingNeg","insertText":"throwingNeg()","insertTextFormat":1,"kind":2,"label":"throwingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingPow","insertText":"throwingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShl","insertText":"throwingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShr","insertText":"throwingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.RadixConvertible<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"toString","insertText":"toString(radix: ${1:Int64})","insertTextFormat":2,"kind":2,"label":"toString(radix!: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingDec","insertText":"wrappingDec()","insertTextFormat":1,"kind":2,"label":"wrappingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingInc","insertText":"wrappingInc()","insertTextFormat":1,"kind":2,"label":"wrappingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingNeg","insertText":"wrappingNeg()","insertTextFormat":1,"kind":2,"label":"wrappingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingPow","insertText":"wrappingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShl","insertText":"wrappingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShr","insertText":"wrappingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} | 1 | +{"id":10,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingDec","insertText":"carryingDec()","insertTextFormat":1,"kind":2,"label":"carryingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingInc","insertText":"carryingInc()","insertTextFormat":1,"kind":2,"label":"carryingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingNeg","insertText":"carryingNeg()","insertTextFormat":1,"kind":2,"label":"carryingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingPow","insertText":"carryingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShl","insertText":"carryingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShr","insertText":"carryingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedDec","insertText":"checkedDec()","insertTextFormat":1,"kind":2,"label":"checkedDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedInc","insertText":"checkedInc()","insertTextFormat":1,"kind":2,"label":"checkedInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedNeg","insertText":"checkedNeg()","insertTextFormat":1,"kind":2,"label":"checkedNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedPow","insertText":"checkedPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShl","insertText":"checkedShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShr","insertText":"checkedShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Int64): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Int64})","insertTextFormat":2,"kind":2,"label":"compare(other: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.Formattable\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"format","insertText":"format(${1:fmt: String})","insertTextFormat":2,"kind":2,"label":"format(fmt: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public open func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Int64","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingDec","insertText":"saturatingDec()","insertTextFormat":1,"kind":2,"label":"saturatingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingInc","insertText":"saturatingInc()","insertTextFormat":1,"kind":2,"label":"saturatingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingNeg","insertText":"saturatingNeg()","insertTextFormat":1,"kind":2,"label":"saturatingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingPow","insertText":"saturatingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShl","insertText":"saturatingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShr","insertText":"saturatingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.SwapEndianOrder<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"swapBytes","insertText":"swapBytes()","insertTextFormat":1,"kind":2,"label":"swapBytes()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingDec","insertText":"throwingDec()","insertTextFormat":1,"kind":2,"label":"throwingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingInc","insertText":"throwingInc()","insertTextFormat":1,"kind":2,"label":"throwingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingNeg","insertText":"throwingNeg()","insertTextFormat":1,"kind":2,"label":"throwingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingPow","insertText":"throwingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShl","insertText":"throwingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShr","insertText":"throwingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.RadixConvertible<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"toString","insertText":"toString(radix: ${1:Int64})","insertTextFormat":2,"kind":2,"label":"toString(radix!: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingDec","insertText":"wrappingDec()","insertTextFormat":1,"kind":2,"label":"wrappingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingInc","insertText":"wrappingInc()","insertTextFormat":1,"kind":2,"label":"wrappingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingNeg","insertText":"wrappingNeg()","insertTextFormat":1,"kind":2,"label":"wrappingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingPow\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingPow","insertText":"wrappingPow(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingPow(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShl","insertText":"wrappingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShr","insertText":"wrappingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":8},"start":{"character":0,"line":8}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"","documentation":"","filterText":"asResource","insertText":"asResource","insertTextFormat":1,"kind":2,"label":"asResource","sortText":""},{"deprecated":false,"detail":"public func asResource(): CStringResource","documentation":"","filterText":"asResource","insertText":"asResource()","insertTextFormat":1,"kind":2,"label":"asResource()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(str: CString): Int32","documentation":"","filterText":"compare","insertText":"compare(${1:str: CString})","insertTextFormat":2,"kind":2,"label":"compare(str: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"endsWith","insertText":"endsWith","insertTextFormat":1,"kind":2,"label":"endsWith","sortText":""},{"deprecated":false,"detail":"public func endsWith(suffix: CString): Bool","documentation":"","filterText":"endsWith","insertText":"endsWith(${1:suffix: CString})","insertTextFormat":2,"kind":2,"label":"endsWith(suffix: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"equals","insertText":"equals","insertTextFormat":1,"kind":2,"label":"equals","sortText":""},{"deprecated":false,"detail":"public func equals(other: CString): Bool","documentation":"","filterText":"equals","insertText":"equals(${1:other: CString})","insertTextFormat":2,"kind":2,"label":"equals(other: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"equalsLower","insertText":"equalsLower","insertTextFormat":1,"kind":2,"label":"equalsLower","sortText":""},{"deprecated":false,"detail":"public func equalsLower(other: CString): Bool","documentation":"","filterText":"equalsLower","insertText":"equalsLower(${1:other: CString})","insertTextFormat":2,"kind":2,"label":"equalsLower(other: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"getChars","insertText":"getChars","insertTextFormat":1,"kind":2,"label":"getChars","sortText":""},{"deprecated":false,"detail":"public func getChars(): CPointer<UInt8>","documentation":"","filterText":"getChars","insertText":"getChars()","insertTextFormat":1,"kind":2,"label":"getChars()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isEmpty","insertText":"isEmpty","insertTextFormat":1,"kind":2,"label":"isEmpty","sortText":""},{"deprecated":false,"detail":"public func isEmpty(): Bool","documentation":"","filterText":"isEmpty","insertText":"isEmpty()","insertTextFormat":1,"kind":2,"label":"isEmpty()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isNotEmpty","insertText":"isNotEmpty","insertTextFormat":1,"kind":2,"label":"isNotEmpty","sortText":""},{"deprecated":false,"detail":"public func isNotEmpty(): Bool","documentation":"","filterText":"isNotEmpty","insertText":"isNotEmpty()","insertTextFormat":1,"kind":2,"label":"isNotEmpty()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isNull","insertText":"isNull","insertTextFormat":1,"kind":2,"label":"isNull","sortText":""},{"deprecated":false,"detail":"public func isNull(): Bool","documentation":"","filterText":"isNull","insertText":"isNull()","insertTextFormat":1,"kind":2,"label":"isNull()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"size","insertText":"size","insertTextFormat":1,"kind":2,"label":"size","sortText":""},{"deprecated":false,"detail":"public func size(): Int64","documentation":"","filterText":"size","insertText":"size()","insertTextFormat":1,"kind":2,"label":"size()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"startsWith","insertText":"startsWith","insertTextFormat":1,"kind":2,"label":"startsWith","sortText":""},{"deprecated":false,"detail":"public func startsWith(prefix: CString): Bool","documentation":"","filterText":"startsWith","insertText":"startsWith(${1:prefix: CString})","insertTextFormat":2,"kind":2,"label":"startsWith(prefix: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"subCString","insertText":"subCString","insertTextFormat":1,"kind":2,"label":"subCString","sortText":""},{"deprecated":false,"detail":"public func subCString(beginIndex: UIntNative): CString","documentation":"","filterText":"subCString","insertText":"subCString(${1:beginIndex: UIntNative})","insertTextFormat":2,"kind":2,"label":"subCString(beginIndex: UIntNative)","sortText":""},{"deprecated":false,"detail":"public func subCString(beginIndex: UIntNative, subLen: UIntNative): CString","documentation":"","filterText":"subCString","insertText":"subCString(${1:beginIndex: UIntNative}, ${2:subLen: UIntNative})","insertTextFormat":2,"kind":2,"label":"subCString(beginIndex: UIntNative, subLen: UIntNative)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"","documentation":"","filterText":"asResource","insertText":"asResource","insertTextFormat":1,"kind":2,"label":"asResource","sortText":""},{"deprecated":false,"detail":"public func asResource(): CStringResource","documentation":"","filterText":"asResource","insertText":"asResource()","insertTextFormat":1,"kind":2,"label":"asResource()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(str: CString): Int32","documentation":"","filterText":"compare","insertText":"compare(${1:str: CString})","insertTextFormat":2,"kind":2,"label":"compare(str: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"endsWith","insertText":"endsWith","insertTextFormat":1,"kind":2,"label":"endsWith","sortText":""},{"deprecated":false,"detail":"public func endsWith(suffix: CString): Bool","documentation":"","filterText":"endsWith","insertText":"endsWith(${1:suffix: CString})","insertTextFormat":2,"kind":2,"label":"endsWith(suffix: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"equals","insertText":"equals","insertTextFormat":1,"kind":2,"label":"equals","sortText":""},{"deprecated":false,"detail":"public func equals(other: CString): Bool","documentation":"","filterText":"equals","insertText":"equals(${1:other: CString})","insertTextFormat":2,"kind":2,"label":"equals(other: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"equalsLower","insertText":"equalsLower","insertTextFormat":1,"kind":2,"label":"equalsLower","sortText":""},{"deprecated":false,"detail":"public func equalsLower(other: CString): Bool","documentation":"","filterText":"equalsLower","insertText":"equalsLower(${1:other: CString})","insertTextFormat":2,"kind":2,"label":"equalsLower(other: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"getChars","insertText":"getChars","insertTextFormat":1,"kind":2,"label":"getChars","sortText":""},{"deprecated":false,"detail":"public func getChars(): CPointer<UInt8>","documentation":"","filterText":"getChars","insertText":"getChars()","insertTextFormat":1,"kind":2,"label":"getChars()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isEmpty","insertText":"isEmpty","insertTextFormat":1,"kind":2,"label":"isEmpty","sortText":""},{"deprecated":false,"detail":"public func isEmpty(): Bool","documentation":"","filterText":"isEmpty","insertText":"isEmpty()","insertTextFormat":1,"kind":2,"label":"isEmpty()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isNotEmpty","insertText":"isNotEmpty","insertTextFormat":1,"kind":2,"label":"isNotEmpty","sortText":""},{"deprecated":false,"detail":"public func isNotEmpty(): Bool","documentation":"","filterText":"isNotEmpty","insertText":"isNotEmpty()","insertTextFormat":1,"kind":2,"label":"isNotEmpty()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isNull","insertText":"isNull","insertTextFormat":1,"kind":2,"label":"isNull","sortText":""},{"deprecated":false,"detail":"public func isNull(): Bool","documentation":"","filterText":"isNull","insertText":"isNull()","insertTextFormat":1,"kind":2,"label":"isNull()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"size","insertText":"size","insertTextFormat":1,"kind":2,"label":"size","sortText":""},{"deprecated":false,"detail":"public func size(): Int64","documentation":"","filterText":"size","insertText":"size()","insertTextFormat":1,"kind":2,"label":"size()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"startsWith","insertText":"startsWith","insertTextFormat":1,"kind":2,"label":"startsWith","sortText":""},{"deprecated":false,"detail":"public func startsWith(prefix: CString): Bool","documentation":"","filterText":"startsWith","insertText":"startsWith(${1:prefix: CString})","insertTextFormat":2,"kind":2,"label":"startsWith(prefix: CString)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"subCString","insertText":"subCString","insertTextFormat":1,"kind":2,"label":"subCString","sortText":""},{"deprecated":false,"detail":"public func subCString(beginIndex: UIntNative): CString","documentation":"","filterText":"subCString","insertText":"subCString(${1:beginIndex: UIntNative})","insertTextFormat":2,"kind":2,"label":"subCString(beginIndex: UIntNative)","sortText":""},{"deprecated":false,"detail":"public func subCString(beginIndex: UIntNative, subLen: UIntNative): CString","documentation":"","filterText":"subCString","insertText":"subCString(${1:beginIndex: UIntNative}, ${2:subLen: UIntNative})","insertTextFormat":2,"kind":2,"label":"subCString(beginIndex: UIntNative, subLen: UIntNative)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":"9","jsonrpc":"2.0","result":[{"deprecated":false,"detail":"internal var c: Int64 = 1","documentation":"","filterText":"c","insertText":"c","insertTextFormat":1,"kind":6,"label":"c","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Int64): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Int64})","insertTextFormat":2,"kind":2,"label":"compare(other: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Int64","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""}]} | 1 | +{"id":"9","jsonrpc":"2.0","result":[{"deprecated":false,"detail":"internal var c: Int64 = 1","documentation":"","filterText":"c","insertText":"c","insertTextFormat":1,"kind":6,"label":"c","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Int64): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Int64})","insertTextFormat":2,"kind":2,"label":"compare(other: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public open func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Int64","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"class ZZZ","documentation":"","filterText":"ZZZ","insertText":"ZZZ","insertTextFormat":1,"kind":7,"label":"ZZZ","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"class ZZZ","documentation":"","filterText":"ZZZ","insertText":"ZZZ","insertTextFormat":1,"kind":7,"label":"ZZZ","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2","insertTextFormat":1,"kind":2,"label":"zeroValue2","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue2<T>(): T","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue2<T>()","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public open class ArithmeticException <: Exception","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException","insertTextFormat":1,"kind":7,"label":"ArithmeticException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException()","insertTextFormat":1,"kind":3,"label":"ArithmeticException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"ArithmeticException(message: String)","sortText":""},{"deprecated":false,"detail":"public class Box<T>","documentation":"","filterText":"Box","insertText":"Box<${1:T}>","insertTextFormat":2,"kind":7,"label":"Box<T>","sortText":""},{"deprecated":false,"detail":"public func init(v: T)","documentation":"","filterText":"Box<T>","insertText":"Box<${1:T}>(${3:v: T})","insertTextFormat":2,"kind":3,"label":"Box<T>(v: T)","sortText":""},{"deprecated":false,"detail":"public open class Exception <: ToString","documentation":"","filterText":"Exception","insertText":"Exception","insertTextFormat":1,"kind":7,"label":"Exception","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Exception","insertText":"Exception()","insertTextFormat":1,"kind":3,"label":"Exception()","sortText":""},{"deprecated":false,"detail":"public func init(causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String})","insertTextFormat":2,"kind":3,"label":"Exception(message: String)","sortText":""},{"deprecated":false,"detail":"public func init(message: String, causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String}, ${2:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(message: String, causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public open class IllegalArgumentException <: Exception","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException","insertTextFormat":1,"kind":7,"label":"IllegalArgumentException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException()","insertTextFormat":1,"kind":3,"label":"IllegalArgumentException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalArgumentException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class IllegalFormatException <: IllegalArgumentException","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException","insertTextFormat":1,"kind":7,"label":"IllegalFormatException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException()","insertTextFormat":1,"kind":3,"label":"IllegalFormatException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalFormatException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalStateException <: Exception","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException","insertTextFormat":1,"kind":7,"label":"IllegalStateException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException()","insertTextFormat":1,"kind":3,"label":"IllegalStateException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalStateException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public class SpawnException <: Exception","documentation":"","filterText":"SpawnException","insertText":"SpawnException","insertTextFormat":1,"kind":7,"label":"SpawnException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"SpawnException","insertText":"SpawnException()","insertTextFormat":1,"kind":3,"label":"SpawnException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"SpawnException","insertText":"SpawnException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"SpawnException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface ThreadContext","documentation":"","filterText":"ThreadContext","insertText":"ThreadContext","insertTextFormat":1,"kind":8,"label":"ThreadContext","sortText":""},{"deprecated":false,"detail":"public class TimeoutException <: Exception","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException","insertTextFormat":1,"kind":7,"label":"TimeoutException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException()","insertTextFormat":1,"kind":3,"label":"TimeoutException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"TimeoutException(message: String)","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope","insertTextFormat":1,"kind":2,"label":"exclusiveScope","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}> { => ${3:T} }","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T> { => T }","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}>(${3:fn: () -> T})","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T>(fn: () -> T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"max","insertText":"max","insertTextFormat":1,"kind":2,"label":"max","sortText":""},{"deprecated":false,"detail":"public func max<T>(a: T, b: T, others: Array<T>): T","documentation":"","filterText":"max","insertText":"max<${1:T}>(${3:a: T}, ${4:b: T}, ${5:others: Array<T>})","insertTextFormat":2,"kind":2,"label":"max<T>(a: T, b: T, others: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"extend","insertText":"extend","insertTextFormat":1,"kind":14,"label":"extend","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"except","insertText":"except","insertTextFormat":1,"kind":14,"label":"except","sortText":""},{"deprecated":false,"detail":"extend name{}","documentation":"","filterText":"extend","insertText":"extend ${0:name}{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend name{}","sortText":""},{"deprecated":false,"detail":"extend<T> name<T>{}","documentation":"","filterText":"extend","insertText":"extend<T> ${0:name}<T>{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend<T> name<T>{}","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.blackBox\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"blackBox","insertText":"blackBox<${1:T}>(${3:input: T})","insertTextFormat":2,"kind":2,"label":"blackBox<T>(input: T)","sortText":""}]} | 1 | +{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public open class ArithmeticException <: Exception","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException","insertTextFormat":1,"kind":7,"label":"ArithmeticException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException()","insertTextFormat":1,"kind":3,"label":"ArithmeticException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"ArithmeticException(message: String)","sortText":""},{"deprecated":false,"detail":"public class Box<T>","documentation":"","filterText":"Box","insertText":"Box<${1:T}>","insertTextFormat":2,"kind":7,"label":"Box<T>","sortText":""},{"deprecated":false,"detail":"public func init(v: T)","documentation":"","filterText":"Box<T>","insertText":"Box<${1:T}>(${3:v: T})","insertTextFormat":2,"kind":3,"label":"Box<T>(v: T)","sortText":""},{"deprecated":false,"detail":"public open class Exception <: ToString","documentation":"","filterText":"Exception","insertText":"Exception","insertTextFormat":1,"kind":7,"label":"Exception","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Exception","insertText":"Exception()","insertTextFormat":1,"kind":3,"label":"Exception()","sortText":""},{"deprecated":false,"detail":"public func init(causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String})","insertTextFormat":2,"kind":3,"label":"Exception(message: String)","sortText":""},{"deprecated":false,"detail":"public func init(message: String, causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String}, ${2:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(message: String, causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public open class IllegalArgumentException <: Exception","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException","insertTextFormat":1,"kind":7,"label":"IllegalArgumentException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException()","insertTextFormat":1,"kind":3,"label":"IllegalArgumentException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalArgumentException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class IllegalFormatException <: IllegalArgumentException","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException","insertTextFormat":1,"kind":7,"label":"IllegalFormatException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException()","insertTextFormat":1,"kind":3,"label":"IllegalFormatException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalFormatException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalStateException <: Exception","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException","insertTextFormat":1,"kind":7,"label":"IllegalStateException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException()","insertTextFormat":1,"kind":3,"label":"IllegalStateException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalStateException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public class SpawnException <: Exception","documentation":"","filterText":"SpawnException","insertText":"SpawnException","insertTextFormat":1,"kind":7,"label":"SpawnException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"SpawnException","insertText":"SpawnException()","insertTextFormat":1,"kind":3,"label":"SpawnException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"SpawnException","insertText":"SpawnException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"SpawnException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface ThreadContext","documentation":"","filterText":"ThreadContext","insertText":"ThreadContext","insertTextFormat":1,"kind":8,"label":"ThreadContext","sortText":""},{"deprecated":false,"detail":"public class TimeoutException <: Exception","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException","insertTextFormat":1,"kind":7,"label":"TimeoutException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException()","insertTextFormat":1,"kind":3,"label":"TimeoutException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"TimeoutException(message: String)","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope","insertTextFormat":1,"kind":2,"label":"exclusiveScope","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}> { => ${3:T} }","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T> { => T }","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}>(${3:fn: () -> T})","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T>(fn: () -> T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"max","insertText":"max","insertTextFormat":1,"kind":2,"label":"max","sortText":""},{"deprecated":false,"detail":"public func max<T>(a: T, b: T, others: Array<T>): T","documentation":"","filterText":"max","insertText":"max<${1:T}>(${3:a: T}, ${4:b: T}, ${5:others: Array<T>})","insertTextFormat":2,"kind":2,"label":"max<T>(a: T, b: T, others: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"extend","insertText":"extend","insertTextFormat":1,"kind":14,"label":"extend","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclave","insertText":"exclave","insertTextFormat":1,"kind":14,"label":"exclave","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"except","insertText":"except","insertTextFormat":1,"kind":14,"label":"except","sortText":""},{"deprecated":false,"detail":"extend name{}","documentation":"","filterText":"extend","insertText":"extend ${0:name}{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend name{}","sortText":""},{"deprecated":false,"detail":"extend<T> name<T>{}","documentation":"","filterText":"extend","insertText":"extend<T> ${0:name}<T>{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend<T> name<T>{}","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.blackBox\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"blackBox","insertText":"blackBox<${1:T}>(${3:input: T})","insertTextFormat":2,"kind":2,"label":"blackBox<T>(input: T)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public interface Any","documentation":"","filterText":"Any","insertText":"Any","insertTextFormat":1,"kind":8,"label":"Any","sortText":""},{"deprecated":false,"detail":"public struct Array<T>","documentation":"","filterText":"Array","insertText":"Array<${1:T}>","insertTextFormat":2,"kind":22,"label":"Array<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>()","insertTextFormat":2,"kind":3,"label":"Array<T>()","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, ${4:initElement: (Int64) -> T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, repeat!: T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, repeat: ${4:T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, repeat!: T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<T>(${3:size: Int64}) { arg1: Int64 => ${4:T} }","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64) { Int64 => T }","sortText":""},{"deprecated":false,"detail":"public class ArrayIterator<T> <: Iterator<T>","documentation":"","filterText":"ArrayIterator","insertText":"ArrayIterator<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayIterator<T>","sortText":""},{"deprecated":false,"detail":"public func init(data: Array<T>)","documentation":"","filterText":"ArrayIterator<T>","insertText":"ArrayIterator<${1:T}>(${3:data: Array<T>})","insertTextFormat":2,"kind":3,"label":"ArrayIterator<T>(data: Array<T>)","sortText":""},{"deprecated":false,"detail":"public type Byte = UInt8","documentation":"","filterText":"Byte","insertText":"Byte","insertTextFormat":1,"kind":7,"label":"Byte","sortText":""},{"deprecated":false,"detail":"public sealed open interface CType","documentation":"","filterText":"CType","insertText":"CType","insertTextFormat":1,"kind":8,"label":"CType","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OutOfMemoryError <: Error","documentation":"","filterText":"OutOfMemoryError","insertText":"OutOfMemoryError","insertTextFormat":1,"kind":7,"label":"OutOfMemoryError","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData","insertTextFormat":1,"kind":2,"label":"acquireArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func acquireArrayRawData<T>(arr: Array<T>): CPointerHandle<T>","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData<${1:T}>(${3:arr: Array<T>})","insertTextFormat":2,"kind":2,"label":"acquireArrayRawData<T>(arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData","insertTextFormat":1,"kind":2,"label":"releaseArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func releaseArrayRawData<T>(handle: CPointerHandle<T>): Unit","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData<${1:T}>(${3:handle: CPointerHandle<T>})","insertTextFormat":2,"kind":2,"label":"releaseArrayRawData<T>(handle: CPointerHandle<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"VArray","insertText":"VArray","insertTextFormat":1,"kind":14,"label":"VArray","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"type","insertText":"type","insertTextFormat":1,"kind":14,"label":"type","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"try","insertText":"try","insertTextFormat":1,"kind":14,"label":"try","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"finally","insertText":"finally","insertTextFormat":1,"kind":14,"label":"finally","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"try {}","documentation":"","filterText":"try","insertText":"try {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"try {}","sortText":""},{"deprecated":false,"detail":"finally {}","documentation":"","filterText":"finally","insertText":"finally {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"finally {}","sortText":""},{"deprecated":false,"detail":"type newName = originalName","documentation":"","filterText":"type","insertText":"type ${1:newName} = ${0:originalName}","insertTextFormat":2,"kind":14,"label":"type newName = originalName","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(${0:initElement: (Int64) -> T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(repeat!: T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(repeat: ${0:T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(repeat!: T)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ArrayList\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"ArrayList","insertText":"ArrayList<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayList<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.ConfigurationKey\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"ConfigurationKey","insertText":"ConfigurationKey","insertTextFormat":1,"kind":7,"label":"ConfigurationKey","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataStrategy\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataStrategy","insertText":"DataStrategy<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataStrategy<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyFor\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyFor","insertText":"KeyFor<${1:T}>","insertTextFormat":2,"kind":8,"label":"KeyFor<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyTags\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyTags","insertText":"KeyTags","insertTextFormat":1,"kind":22,"label":"KeyTags","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Arbitrary\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Arbitrary","insertText":"Arbitrary<${1:T}>","insertTextFormat":2,"kind":8,"label":"Arbitrary<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} | 1 | +{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public interface Any","documentation":"","filterText":"Any","insertText":"Any","insertTextFormat":1,"kind":8,"label":"Any","sortText":""},{"deprecated":false,"detail":"public struct Array<T>","documentation":"","filterText":"Array","insertText":"Array<${1:T}>","insertTextFormat":2,"kind":22,"label":"Array<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>()","insertTextFormat":2,"kind":3,"label":"Array<T>()","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, ${4:initElement: (Int64) -> T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, repeat!: T)","documentation":"","filterText":"Array<T>","insertText":"Array<${1:T}>(${3:size: Int64}, repeat: ${4:T})","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64, repeat!: T)","sortText":""},{"deprecated":false,"detail":"public func init(size: Int64, initElement: (Int64) -> T)","documentation":"","filterText":"Array<T>","insertText":"Array<T>(${3:size: Int64}) { arg1: Int64 => ${4:T} }","insertTextFormat":2,"kind":3,"label":"Array<T>(size: Int64) { Int64 => T }","sortText":""},{"deprecated":false,"detail":"public class ArrayIterator<T> <: Iterator<T>","documentation":"","filterText":"ArrayIterator","insertText":"ArrayIterator<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayIterator<T>","sortText":""},{"deprecated":false,"detail":"public func init(data: Array<T>)","documentation":"","filterText":"ArrayIterator<T>","insertText":"ArrayIterator<${1:T}>(${3:data: Array<T>})","insertTextFormat":2,"kind":3,"label":"ArrayIterator<T>(data: Array<T>)","sortText":""},{"deprecated":false,"detail":"public type Byte = UInt8","documentation":"","filterText":"Byte","insertText":"Byte","insertTextFormat":1,"kind":7,"label":"Byte","sortText":""},{"deprecated":false,"detail":"public sealed open interface CType","documentation":"","filterText":"CType","insertText":"CType","insertTextFormat":1,"kind":8,"label":"CType","sortText":""},{"deprecated":false,"detail":"public sealed open interface Copyable","documentation":"","filterText":"Copyable","insertText":"Copyable","insertTextFormat":1,"kind":8,"label":"Copyable","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OutOfMemoryError <: Error","documentation":"","filterText":"OutOfMemoryError","insertText":"OutOfMemoryError","insertTextFormat":1,"kind":7,"label":"OutOfMemoryError","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData","insertTextFormat":1,"kind":2,"label":"acquireArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func acquireArrayRawData<T>(arr: Array<T>): CPointerHandle<T>","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData<${1:T}>(${3:arr: Array<T>})","insertTextFormat":2,"kind":2,"label":"acquireArrayRawData<T>(arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData","insertTextFormat":1,"kind":2,"label":"releaseArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func releaseArrayRawData<T>(handle: CPointerHandle<T>): Unit","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData<${1:T}>(${3:handle: CPointerHandle<T>})","insertTextFormat":2,"kind":2,"label":"releaseArrayRawData<T>(handle: CPointerHandle<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"VArray","insertText":"VArray","insertTextFormat":1,"kind":14,"label":"VArray","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"type","insertText":"type","insertTextFormat":1,"kind":14,"label":"type","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"try","insertText":"try","insertTextFormat":1,"kind":14,"label":"try","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"finally","insertText":"finally","insertTextFormat":1,"kind":14,"label":"finally","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"try {}","documentation":"","filterText":"try","insertText":"try {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"try {}","sortText":""},{"deprecated":false,"detail":"finally {}","documentation":"","filterText":"finally","insertText":"finally {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"finally {}","sortText":""},{"deprecated":false,"detail":"type newName = originalName","documentation":"","filterText":"type","insertText":"type ${1:newName} = ${0:originalName}","insertTextFormat":2,"kind":14,"label":"type newName = originalName","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(${0:initElement: (Int64) -> T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(repeat!: T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(repeat: ${0:T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(repeat!: T)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ArrayList\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"ArrayList","insertText":"ArrayList<${1:T}>","insertTextFormat":2,"kind":7,"label":"ArrayList<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.ConfigurationKey\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"ConfigurationKey","insertText":"ConfigurationKey","insertTextFormat":1,"kind":7,"label":"ConfigurationKey","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataStrategy\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataStrategy","insertText":"DataStrategy<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataStrategy<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyFor\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyFor","insertText":"KeyFor<${1:T}>","insertTextFormat":2,"kind":8,"label":"KeyFor<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyTags\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyTags","insertText":"KeyTags","insertTextFormat":1,"kind":22,"label":"KeyTags","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Arbitrary\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Arbitrary","insertText":"Arbitrary<${1:T}>","insertTextFormat":2,"kind":8,"label":"Arbitrary<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public enum AnnotationKind","documentation":"","filterText":"AnnotationKind","insertText":"AnnotationKind","insertTextFormat":1,"kind":13,"label":"AnnotationKind","sortText":""},{"deprecated":false,"detail":"public interface Any","documentation":"","filterText":"Any","insertText":"Any","insertTextFormat":1,"kind":8,"label":"Any","sortText":""},{"deprecated":false,"detail":"public open class ArithmeticException <: Exception","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException","insertTextFormat":1,"kind":7,"label":"ArithmeticException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException()","insertTextFormat":1,"kind":3,"label":"ArithmeticException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"ArithmeticException(message: String)","sortText":""},{"deprecated":false,"detail":"public Type CFunc<T>","documentation":"","filterText":"CFunc","insertText":"CFunc<${1:()} -> ${2:Unit}>","insertTextFormat":2,"kind":7,"label":"CFunc<T>","sortText":""},{"deprecated":false,"detail":"public Type CPointer<T>","documentation":"","filterText":"CPointer","insertText":"CPointer<${1:T}>","insertTextFormat":2,"kind":7,"label":"CPointer<T>","sortText":""},{"deprecated":false,"detail":"public struct CPointerHandle<T>","documentation":"","filterText":"CPointerHandle","insertText":"CPointerHandle<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerHandle<T>","sortText":""},{"deprecated":true,"detail":"public func init()","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>()","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>()","sortText":""},{"deprecated":true,"detail":"public func init(ptr: CPointer<T>, arr: Array<T>)","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>(${3:ptr: CPointer<T>}, ${4:arr: Array<T>})","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>(ptr: CPointer<T>, arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"public struct CPointerResource<T>","documentation":"","filterText":"CPointerResource","insertText":"CPointerResource<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerResource<T>","sortText":""},{"deprecated":false,"detail":"public Type CString","documentation":"","filterText":"CString","insertText":"CString","insertTextFormat":1,"kind":7,"label":"CString","sortText":""},{"deprecated":false,"detail":"public struct CStringResource","documentation":"","filterText":"CStringResource","insertText":"CStringResource","insertTextFormat":1,"kind":22,"label":"CStringResource","sortText":""},{"deprecated":false,"detail":"public interface Collection<T> extends Iterable<T>","documentation":"","filterText":"Collection","insertText":"Collection<${1:T}>","insertTextFormat":2,"kind":8,"label":"Collection<T>","sortText":""},{"deprecated":false,"detail":"public interface Countable<T>","documentation":"","filterText":"Countable","insertText":"Countable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Countable<T>","sortText":""},{"deprecated":false,"detail":"public struct Duration","documentation":"","filterText":"Duration","insertText":"Duration","insertTextFormat":1,"kind":22,"label":"Duration","sortText":""},{"deprecated":false,"detail":"public enum Endian","documentation":"","filterText":"Endian","insertText":"Endian","insertTextFormat":1,"kind":13,"label":"Endian","sortText":""},{"deprecated":false,"detail":"public open class Exception <: ToString","documentation":"","filterText":"Exception","insertText":"Exception","insertTextFormat":1,"kind":7,"label":"Exception","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Exception","insertText":"Exception()","insertTextFormat":1,"kind":3,"label":"Exception()","sortText":""},{"deprecated":false,"detail":"public func init(causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String})","insertTextFormat":2,"kind":3,"label":"Exception(message: String)","sortText":""},{"deprecated":false,"detail":"public func init(message: String, causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String}, ${2:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(message: String, causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public open class IllegalArgumentException <: Exception","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException","insertTextFormat":1,"kind":7,"label":"IllegalArgumentException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException()","insertTextFormat":1,"kind":3,"label":"IllegalArgumentException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalArgumentException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class IllegalFormatException <: IllegalArgumentException","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException","insertTextFormat":1,"kind":7,"label":"IllegalFormatException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException()","insertTextFormat":1,"kind":3,"label":"IllegalFormatException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalFormatException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalStateException <: Exception","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException","insertTextFormat":1,"kind":7,"label":"IllegalStateException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException()","insertTextFormat":1,"kind":3,"label":"IllegalStateException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalStateException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public type Int = Int64","documentation":"","filterText":"Int","insertText":"Int","insertTextFormat":1,"kind":7,"label":"Int","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface NotEqual<T>","documentation":"","filterText":"NotEqual","insertText":"NotEqual<${1:T}>","insertTextFormat":2,"kind":8,"label":"NotEqual<T>","sortText":""},{"deprecated":false,"detail":"public enum Option<T>","documentation":"","filterText":"Option","insertText":"Option<${1:T}>","insertTextFormat":2,"kind":13,"label":"Option<T>","sortText":""},{"deprecated":false,"detail":"public enum Ordering","documentation":"","filterText":"Ordering","insertText":"Ordering","insertTextFormat":1,"kind":13,"label":"Ordering","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public struct Range<T>","documentation":"","filterText":"Range","insertText":"Range<${1:T}>","insertTextFormat":2,"kind":22,"label":"Range<T>","sortText":""},{"deprecated":false,"detail":"public func init(start: T, end: T, step: Int64, hasStart: Bool, hasEnd: Bool, isClosed: Bool)","documentation":"","filterText":"Range<T>","insertText":"Range<${1:T}>(${3:start: T}, ${4:end: T}, ${5:step: Int64}, ${6:hasStart: Bool}, ${7:hasEnd: Bool}, ${8:isClosed: Bool})","insertTextFormat":2,"kind":3,"label":"Range<T>(start: T, end: T, step: Int64, hasStart: Bool, hasEnd: Bool, isClosed: Bool)","sortText":""},{"deprecated":false,"detail":"public class RangeIterator<T> <: Iterator<T>","documentation":"","filterText":"RangeIterator","insertText":"RangeIterator<${1:T}>","insertTextFormat":2,"kind":7,"label":"RangeIterator<T>","sortText":""},{"deprecated":false,"detail":"public class SpawnException <: Exception","documentation":"","filterText":"SpawnException","insertText":"SpawnException","insertTextFormat":1,"kind":7,"label":"SpawnException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"SpawnException","insertText":"SpawnException()","insertTextFormat":1,"kind":3,"label":"SpawnException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"SpawnException","insertText":"SpawnException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"SpawnException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class StackTraceElement <: ToString","documentation":"","filterText":"StackTraceElement","insertText":"StackTraceElement","insertTextFormat":1,"kind":7,"label":"StackTraceElement","sortText":""},{"deprecated":false,"detail":"public func init(declaringClass: String, methodName: String, fileName: String, lineNumber: Int64)","documentation":"","filterText":"StackTraceElement","insertText":"StackTraceElement(${1:declaringClass: String}, ${2:methodName: String}, ${3:fileName: String}, ${4:lineNumber: Int64})","insertTextFormat":2,"kind":3,"label":"StackTraceElement(declaringClass: String, methodName: String, fileName: String, lineNumber: Int64)","sortText":""},{"deprecated":false,"detail":"public struct String","documentation":"","filterText":"String","insertText":"String","insertTextFormat":1,"kind":22,"label":"String","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"String","insertText":"String()","insertTextFormat":1,"kind":3,"label":"String()","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"String","insertText":"String(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"String(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public func init(value: Collection<Rune>)","documentation":"","filterText":"String","insertText":"String(${1:value: Collection<Rune>})","insertTextFormat":2,"kind":3,"label":"String(value: Collection<Rune>)","sortText":""},{"deprecated":false,"detail":"public class StringBuilder <: ToString","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder","insertTextFormat":1,"kind":7,"label":"StringBuilder","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder()","insertTextFormat":1,"kind":3,"label":"StringBuilder()","sortText":""},{"deprecated":false,"detail":"public func init(capacity: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:capacity: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(capacity: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(r: Rune, n: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:r: Rune}, ${2:n: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(r: Rune, n: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(str: String)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:str: String})","insertTextFormat":2,"kind":3,"label":"StringBuilder(str: String)","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"StringBuilder(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public interface ThreadContext","documentation":"","filterText":"ThreadContext","insertText":"ThreadContext","insertTextFormat":1,"kind":8,"label":"ThreadContext","sortText":""},{"deprecated":false,"detail":"public class ThreadSnapshot <: ToString","documentation":"","filterText":"ThreadSnapshot","insertText":"ThreadSnapshot","insertTextFormat":1,"kind":7,"label":"ThreadSnapshot","sortText":""},{"deprecated":false,"detail":"public class TimeoutException <: Exception","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException","insertTextFormat":1,"kind":7,"label":"TimeoutException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException()","insertTextFormat":1,"kind":3,"label":"TimeoutException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"TimeoutException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface ToString","documentation":"","filterText":"ToString","insertText":"ToString","insertTextFormat":1,"kind":8,"label":"ToString","sortText":""},{"deprecated":false,"detail":"public type UInt = UInt64","documentation":"","filterText":"UInt","insertText":"UInt","insertTextFormat":1,"kind":7,"label":"UInt","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"alignOf","insertText":"alignOf","insertTextFormat":1,"kind":2,"label":"alignOf","sortText":""},{"deprecated":false,"detail":"public func alignOf<T>(): UIntNative","documentation":"","filterText":"alignOf","insertText":"alignOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"alignOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprint","insertText":"eprint","insertTextFormat":1,"kind":2,"label":"eprint","sortText":""},{"deprecated":false,"detail":"public func eprint(str: String, flush!: Bool = true): Unit","documentation":"","filterText":"eprint","insertText":"eprint(${1:str: String}, flush: ${2:Bool = true})","insertTextFormat":2,"kind":2,"label":"eprint(str: String, flush!: Bool = true)","sortText":""},{"deprecated":false,"detail":"public func eprint<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"eprint","insertText":"eprint<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"eprint<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprintln","insertText":"eprintln","insertTextFormat":1,"kind":2,"label":"eprintln","sortText":""},{"deprecated":false,"detail":"public func eprintln(str: String): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln(${1:str: String})","insertTextFormat":2,"kind":2,"label":"eprintln(str: String)","sortText":""},{"deprecated":false,"detail":"public func eprintln<T>(arg: T): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"eprintln<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"ifNone","insertText":"ifNone","insertTextFormat":1,"kind":2,"label":"ifNone","sortText":""},{"deprecated":false,"detail":"public func ifNone<T>(o: Option<T>, action: () -> Unit): Unit","documentation":"","filterText":"ifNone","insertText":"ifNone<${1:T}>(${3:o: Option<T>}) { => ${4:Unit} }","insertTextFormat":2,"kind":2,"label":"ifNone<T>(o: Option<T>) { => Unit }","sortText":""},{"deprecated":false,"detail":"public func ifNone<T>(o: Option<T>, action: () -> Unit): Unit","documentation":"","filterText":"ifNone","insertText":"ifNone<${1:T}>(${3:o: Option<T>}, ${4:action: () -> Unit})","insertTextFormat":2,"kind":2,"label":"ifNone<T>(o: Option<T>, action: () -> Unit)","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"init","insertText":"init()","insertTextFormat":1,"kind":4,"label":"init()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"main","insertText":"","insertTextFormat":2,"kind":0,"label":"main()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"min","insertText":"min","insertTextFormat":1,"kind":2,"label":"min","sortText":""},{"deprecated":false,"detail":"public func min<T>(a: T, b: T, others: Array<T>): T","documentation":"","filterText":"min","insertText":"min<${1:T}>(${3:a: T}, ${4:b: T}, ${5:others: Array<T>})","insertTextFormat":2,"kind":2,"label":"min<T>(a: T, b: T, others: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"print","insertText":"print","insertTextFormat":1,"kind":2,"label":"print","sortText":""},{"deprecated":false,"detail":"public func print(b: Bool, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:b: Bool}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(b: Bool, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(c: Rune, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:c: Rune}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(c: Rune, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(str: String, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:str: String}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(str: String, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"print<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"println","insertText":"println","insertTextFormat":1,"kind":2,"label":"println","sortText":""},{"deprecated":false,"detail":"public func println(): Unit","documentation":"","filterText":"println","insertText":"println()","insertTextFormat":1,"kind":2,"label":"println()","sortText":""},{"deprecated":false,"detail":"public func println(b: Bool): Unit","documentation":"","filterText":"println","insertText":"println(${1:b: Bool})","insertTextFormat":2,"kind":2,"label":"println(b: Bool)","sortText":""},{"deprecated":false,"detail":"public func println(c: Rune): Unit","documentation":"","filterText":"println","insertText":"println(${1:c: Rune})","insertTextFormat":2,"kind":2,"label":"println(c: Rune)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float16): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float16})","insertTextFormat":2,"kind":2,"label":"println(f: Float16)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float32): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float32})","insertTextFormat":2,"kind":2,"label":"println(f: Float32)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float64): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float64})","insertTextFormat":2,"kind":2,"label":"println(f: Float64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int16})","insertTextFormat":2,"kind":2,"label":"println(i: Int16)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int32})","insertTextFormat":2,"kind":2,"label":"println(i: Int32)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int64})","insertTextFormat":2,"kind":2,"label":"println(i: Int64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int8})","insertTextFormat":2,"kind":2,"label":"println(i: Int8)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt16})","insertTextFormat":2,"kind":2,"label":"println(i: UInt16)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt32})","insertTextFormat":2,"kind":2,"label":"println(i: UInt32)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt64})","insertTextFormat":2,"kind":2,"label":"println(i: UInt64)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt8})","insertTextFormat":2,"kind":2,"label":"println(i: UInt8)","sortText":""},{"deprecated":false,"detail":"public func println(str: String): Unit","documentation":"","filterText":"println","insertText":"println(${1:str: String})","insertTextFormat":2,"kind":2,"label":"println(str: String)","sortText":""},{"deprecated":false,"detail":"public func println<T>(arg: T): Unit","documentation":"","filterText":"println","insertText":"println<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"println<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"readln","insertText":"readln","insertTextFormat":1,"kind":2,"label":"readln","sortText":""},{"deprecated":false,"detail":"public func readln(): String","documentation":"","filterText":"readln","insertText":"readln()","insertTextFormat":1,"kind":2,"label":"readln()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int8","insertText":"Int8","insertTextFormat":1,"kind":14,"label":"Int8","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int16","insertText":"Int16","insertTextFormat":1,"kind":14,"label":"Int16","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int32","insertText":"Int32","insertTextFormat":1,"kind":14,"label":"Int32","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int64","insertText":"Int64","insertTextFormat":1,"kind":14,"label":"Int64","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"IntNative","insertText":"IntNative","insertTextFormat":1,"kind":14,"label":"IntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt8","insertText":"UInt8","insertTextFormat":1,"kind":14,"label":"UInt8","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt16","insertText":"UInt16","insertTextFormat":1,"kind":14,"label":"UInt16","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt32","insertText":"UInt32","insertTextFormat":1,"kind":14,"label":"UInt32","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt64","insertText":"UInt64","insertTextFormat":1,"kind":14,"label":"UInt64","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UIntNative","insertText":"UIntNative","insertTextFormat":1,"kind":14,"label":"UIntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Rune","insertText":"Rune","insertTextFormat":1,"kind":14,"label":"Rune","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Nothing","insertText":"Nothing","insertTextFormat":1,"kind":14,"label":"Nothing","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Unit","insertText":"Unit","insertTextFormat":1,"kind":14,"label":"Unit","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"enum","insertText":"enum","insertTextFormat":1,"kind":14,"label":"enum","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"interface","insertText":"interface","insertTextFormat":1,"kind":14,"label":"interface","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"func","insertText":"func","insertTextFormat":1,"kind":14,"label":"func","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"const","insertText":"const","insertTextFormat":1,"kind":14,"label":"const","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"init","insertText":"init","insertTextFormat":1,"kind":14,"label":"init","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"finally","insertText":"finally","insertTextFormat":1,"kind":14,"label":"finally","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"return","insertText":"return","insertTextFormat":1,"kind":14,"label":"return","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"continue","insertText":"continue","insertTextFormat":1,"kind":14,"label":"continue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"in","insertText":"in","insertTextFormat":1,"kind":14,"label":"in","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"extend","insertText":"extend","insertTextFormat":1,"kind":14,"label":"extend","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"internal","insertText":"internal","insertTextFormat":1,"kind":14,"label":"internal","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"open","insertText":"open","insertTextFormat":1,"kind":14,"label":"open","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"foreign","insertText":"foreign","insertTextFormat":1,"kind":14,"label":"foreign","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"inout","insertText":"inout","insertTextFormat":1,"kind":14,"label":"inout","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"unsafe","insertText":"unsafe","insertTextFormat":1,"kind":14,"label":"unsafe","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"spawn","insertText":"spawn","insertTextFormat":1,"kind":14,"label":"spawn","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"main","insertText":"main","insertTextFormat":1,"kind":14,"label":"main","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"common","insertText":"common","insertTextFormat":1,"kind":14,"label":"common","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"include","insertText":"include","insertTextFormat":1,"kind":14,"label":"include","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"When","insertText":"When","insertTextFormat":1,"kind":14,"label":"When","sortText":""},{"deprecated":false,"detail":"func name(){}","documentation":"","filterText":"func","insertText":"func ${1:name}($2) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"func name(){}","sortText":""},{"deprecated":false,"detail":"func name<T>(){}","documentation":"","filterText":"func","insertText":"func ${1:name}<T>($2) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"func name<T>(){}","sortText":""},{"deprecated":false,"detail":"interface name {}","documentation":"","filterText":"interface","insertText":"interface ${1:name} {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"interface name {}","sortText":""},{"deprecated":false,"detail":"interface name<T> {}","documentation":"","filterText":"interface","insertText":"interface ${1:name}<T> {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"interface name<T> {}","sortText":""},{"deprecated":false,"detail":"enum name {}","documentation":"","filterText":"enum","insertText":"enum ${1:name} {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"enum name {}","sortText":""},{"deprecated":false,"detail":"enum name<T> {}","documentation":"","filterText":"enum","insertText":"enum ${1:name}<T> {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"enum name<T> {}","sortText":""},{"deprecated":false,"detail":"init() {}","documentation":"","filterText":"init","insertText":"init($0) {\n\t\n}","insertTextFormat":2,"kind":14,"label":"init() {}","sortText":""},{"deprecated":false,"detail":"finally {}","documentation":"","filterText":"finally","insertText":"finally {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"finally {}","sortText":""},{"deprecated":false,"detail":"extend name{}","documentation":"","filterText":"extend","insertText":"extend ${0:name}{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend name{}","sortText":""},{"deprecated":false,"detail":"extend<T> name<T>{}","documentation":"","filterText":"extend","insertText":"extend<T> ${0:name}<T>{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend<T> name<T>{}","sortText":""},{"deprecated":false,"detail":"foreign {}","documentation":"","filterText":"foreign","insertText":"foreign {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"foreign {}","sortText":""},{"deprecated":false,"detail":"main() {}","documentation":"","filterText":"main","insertText":"main() {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"main() {}","sortText":""},{"deprecated":false,"detail":"When[expression]","documentation":"","filterText":"When","insertText":"When[${0:expression}]","insertTextFormat":2,"kind":14,"label":"When[expression]","sortText":""},{"deprecated":false,"detail":"spawn {}","documentation":"","filterText":"spawn","insertText":"spawn {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn {}","sortText":""},{"deprecated":false,"detail":"spawn(threadContext) {}","documentation":"","filterText":"spawn","insertText":"spawn(${1:threadContext}) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn(threadContext) {}","sortText":""},{"deprecated":false,"detail":"Annotation","documentation":"","filterText":"Annotation","insertText":"Annotation","insertTextFormat":1,"kind":14,"label":"Annotation","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Configuration\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Configuration","insertText":"Configuration","insertTextFormat":1,"kind":7,"label":"Configuration","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.ConfigurationKey\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"ConfigurationKey","insertText":"ConfigurationKey","insertTextFormat":1,"kind":7,"label":"ConfigurationKey","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataShrinker\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataShrinker","insertText":"DataShrinker<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataShrinker<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.setOptionInfo\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"setOptionInfo","insertText":"setOptionInfo(${1:name: String}, ${2:types: Array<String>}, description: ${3:Option<String>})","insertTextFormat":2,"kind":2,"label":"setOptionInfo(name: String, types: Array<String>, description!: Option<String>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Shrink\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Shrink","insertText":"Shrink<${1:T}>","insertTextFormat":2,"kind":8,"label":"Shrink<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.random\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"random","insertText":"random<${1:T}>()","insertTextFormat":2,"kind":2,"label":"random<T>()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} | 1 | +{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public enum AnnotationKind","documentation":"","filterText":"AnnotationKind","insertText":"AnnotationKind","insertTextFormat":1,"kind":13,"label":"AnnotationKind","sortText":""},{"deprecated":false,"detail":"public interface Any","documentation":"","filterText":"Any","insertText":"Any","insertTextFormat":1,"kind":8,"label":"Any","sortText":""},{"deprecated":false,"detail":"public open class ArithmeticException <: Exception","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException","insertTextFormat":1,"kind":7,"label":"ArithmeticException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException()","insertTextFormat":1,"kind":3,"label":"ArithmeticException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"ArithmeticException(message: String)","sortText":""},{"deprecated":false,"detail":"public Type CFunc<T>","documentation":"","filterText":"CFunc","insertText":"CFunc<${1:()} -> ${2:Unit}>","insertTextFormat":2,"kind":7,"label":"CFunc<T>","sortText":""},{"deprecated":false,"detail":"public Type CPointer<T>","documentation":"","filterText":"CPointer","insertText":"CPointer<${1:T}>","insertTextFormat":2,"kind":7,"label":"CPointer<T>","sortText":""},{"deprecated":false,"detail":"public struct CPointerHandle<T>","documentation":"","filterText":"CPointerHandle","insertText":"CPointerHandle<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerHandle<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>()","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>()","sortText":""},{"deprecated":false,"detail":"public func init(ptr: CPointer<T>, arr: Array<T>)","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>(${3:ptr: CPointer<T>}, ${4:arr: Array<T>})","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>(ptr: CPointer<T>, arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"public struct CPointerResource<T>","documentation":"","filterText":"CPointerResource","insertText":"CPointerResource<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerResource<T>","sortText":""},{"deprecated":false,"detail":"public Type CString","documentation":"","filterText":"CString","insertText":"CString","insertTextFormat":1,"kind":7,"label":"CString","sortText":""},{"deprecated":false,"detail":"public struct CStringResource","documentation":"","filterText":"CStringResource","insertText":"CStringResource","insertTextFormat":1,"kind":22,"label":"CStringResource","sortText":""},{"deprecated":false,"detail":"public interface Collection<T> extends Iterable<T>","documentation":"","filterText":"Collection","insertText":"Collection<${1:T}>","insertTextFormat":2,"kind":8,"label":"Collection<T>","sortText":""},{"deprecated":false,"detail":"public interface Countable<T>","documentation":"","filterText":"Countable","insertText":"Countable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Countable<T>","sortText":""},{"deprecated":false,"detail":"public struct Duration","documentation":"","filterText":"Duration","insertText":"Duration","insertTextFormat":1,"kind":22,"label":"Duration","sortText":""},{"deprecated":false,"detail":"public enum Endian","documentation":"","filterText":"Endian","insertText":"Endian","insertTextFormat":1,"kind":13,"label":"Endian","sortText":""},{"deprecated":false,"detail":"public open class Exception <: ToString","documentation":"","filterText":"Exception","insertText":"Exception","insertTextFormat":1,"kind":7,"label":"Exception","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Exception","insertText":"Exception()","insertTextFormat":1,"kind":3,"label":"Exception()","sortText":""},{"deprecated":false,"detail":"public func init(causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String})","insertTextFormat":2,"kind":3,"label":"Exception(message: String)","sortText":""},{"deprecated":false,"detail":"public func init(message: String, causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String}, ${2:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(message: String, causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public open class IllegalArgumentException <: Exception","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException","insertTextFormat":1,"kind":7,"label":"IllegalArgumentException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException()","insertTextFormat":1,"kind":3,"label":"IllegalArgumentException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalArgumentException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class IllegalFormatException <: IllegalArgumentException","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException","insertTextFormat":1,"kind":7,"label":"IllegalFormatException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException()","insertTextFormat":1,"kind":3,"label":"IllegalFormatException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalFormatException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalStateException <: Exception","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException","insertTextFormat":1,"kind":7,"label":"IllegalStateException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException()","insertTextFormat":1,"kind":3,"label":"IllegalStateException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalStateException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public type Int = Int64","documentation":"","filterText":"Int","insertText":"Int","insertTextFormat":1,"kind":7,"label":"Int","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface NotEqual<T>","documentation":"","filterText":"NotEqual","insertText":"NotEqual<${1:T}>","insertTextFormat":2,"kind":8,"label":"NotEqual<T>","sortText":""},{"deprecated":false,"detail":"public enum Option<T>","documentation":"","filterText":"Option","insertText":"Option<${1:T}>","insertTextFormat":2,"kind":13,"label":"Option<T>","sortText":""},{"deprecated":false,"detail":"public enum Ordering","documentation":"","filterText":"Ordering","insertText":"Ordering","insertTextFormat":1,"kind":13,"label":"Ordering","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public struct Range<T>","documentation":"","filterText":"Range","insertText":"Range<${1:T}>","insertTextFormat":2,"kind":22,"label":"Range<T>","sortText":""},{"deprecated":false,"detail":"public func init(start: T, end: T, step: Int64, hasStart: Bool, hasEnd: Bool, isClosed: Bool)","documentation":"","filterText":"Range<T>","insertText":"Range<${1:T}>(${3:start: T}, ${4:end: T}, ${5:step: Int64}, ${6:hasStart: Bool}, ${7:hasEnd: Bool}, ${8:isClosed: Bool})","insertTextFormat":2,"kind":3,"label":"Range<T>(start: T, end: T, step: Int64, hasStart: Bool, hasEnd: Bool, isClosed: Bool)","sortText":""},{"deprecated":false,"detail":"public class RangeIterator<T> <: Iterator<T>","documentation":"","filterText":"RangeIterator","insertText":"RangeIterator<${1:T}>","insertTextFormat":2,"kind":7,"label":"RangeIterator<T>","sortText":""},{"deprecated":false,"detail":"public class SpawnException <: Exception","documentation":"","filterText":"SpawnException","insertText":"SpawnException","insertTextFormat":1,"kind":7,"label":"SpawnException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"SpawnException","insertText":"SpawnException()","insertTextFormat":1,"kind":3,"label":"SpawnException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"SpawnException","insertText":"SpawnException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"SpawnException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class StackTraceElement <: ToString","documentation":"","filterText":"StackTraceElement","insertText":"StackTraceElement","insertTextFormat":1,"kind":7,"label":"StackTraceElement","sortText":""},{"deprecated":false,"detail":"public func init(declaringClass: String, methodName: String, fileName: String, lineNumber: Int64)","documentation":"","filterText":"StackTraceElement","insertText":"StackTraceElement(${1:declaringClass: String}, ${2:methodName: String}, ${3:fileName: String}, ${4:lineNumber: Int64})","insertTextFormat":2,"kind":3,"label":"StackTraceElement(declaringClass: String, methodName: String, fileName: String, lineNumber: Int64)","sortText":""},{"deprecated":false,"detail":"public struct String","documentation":"","filterText":"String","insertText":"String","insertTextFormat":1,"kind":22,"label":"String","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"String","insertText":"String()","insertTextFormat":1,"kind":3,"label":"String()","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"String","insertText":"String(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"String(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public func init(value: Collection<Rune>)","documentation":"","filterText":"String","insertText":"String(${1:value: Collection<Rune>})","insertTextFormat":2,"kind":3,"label":"String(value: Collection<Rune>)","sortText":""},{"deprecated":false,"detail":"public class StringBuilder <: ToString","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder","insertTextFormat":1,"kind":7,"label":"StringBuilder","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder()","insertTextFormat":1,"kind":3,"label":"StringBuilder()","sortText":""},{"deprecated":false,"detail":"public func init(capacity: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:capacity: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(capacity: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(r: Rune, n: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:r: Rune}, ${2:n: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(r: Rune, n: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(str: String)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:str: String})","insertTextFormat":2,"kind":3,"label":"StringBuilder(str: String)","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"StringBuilder(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public interface ThreadContext","documentation":"","filterText":"ThreadContext","insertText":"ThreadContext","insertTextFormat":1,"kind":8,"label":"ThreadContext","sortText":""},{"deprecated":false,"detail":"public class ThreadSnapshot <: ToString","documentation":"","filterText":"ThreadSnapshot","insertText":"ThreadSnapshot","insertTextFormat":1,"kind":7,"label":"ThreadSnapshot","sortText":""},{"deprecated":false,"detail":"public class TimeoutException <: Exception","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException","insertTextFormat":1,"kind":7,"label":"TimeoutException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException()","insertTextFormat":1,"kind":3,"label":"TimeoutException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"TimeoutException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface ToString","documentation":"","filterText":"ToString","insertText":"ToString","insertTextFormat":1,"kind":8,"label":"ToString","sortText":""},{"deprecated":false,"detail":"public type UInt = UInt64","documentation":"","filterText":"UInt","insertText":"UInt","insertTextFormat":1,"kind":7,"label":"UInt","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"alignOf","insertText":"alignOf","insertTextFormat":1,"kind":2,"label":"alignOf","sortText":""},{"deprecated":false,"detail":"public func alignOf<T>(): UIntNative","documentation":"","filterText":"alignOf","insertText":"alignOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"alignOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprint","insertText":"eprint","insertTextFormat":1,"kind":2,"label":"eprint","sortText":""},{"deprecated":false,"detail":"public func eprint(str: String, flush!: Bool = true): Unit","documentation":"","filterText":"eprint","insertText":"eprint(${1:str: String}, flush: ${2:Bool = true})","insertTextFormat":2,"kind":2,"label":"eprint(str: String, flush!: Bool = true)","sortText":""},{"deprecated":false,"detail":"public func eprint<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"eprint","insertText":"eprint<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"eprint<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprintln","insertText":"eprintln","insertTextFormat":1,"kind":2,"label":"eprintln","sortText":""},{"deprecated":false,"detail":"public func eprintln(str: String): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln(${1:str: String})","insertTextFormat":2,"kind":2,"label":"eprintln(str: String)","sortText":""},{"deprecated":false,"detail":"public func eprintln<T>(arg: T): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"eprintln<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"ifNone","insertText":"ifNone","insertTextFormat":1,"kind":2,"label":"ifNone","sortText":""},{"deprecated":false,"detail":"public func ifNone<T>(o: Option<T>, action: () -> Unit): Unit","documentation":"","filterText":"ifNone","insertText":"ifNone<${1:T}>(${3:o: Option<T>}) { => ${4:Unit} }","insertTextFormat":2,"kind":2,"label":"ifNone<T>(o: Option<T>) { => Unit }","sortText":""},{"deprecated":false,"detail":"public func ifNone<T>(o: Option<T>, action: () -> Unit): Unit","documentation":"","filterText":"ifNone","insertText":"ifNone<${1:T}>(${3:o: Option<T>}, ${4:action: () -> Unit})","insertTextFormat":2,"kind":2,"label":"ifNone<T>(o: Option<T>, action: () -> Unit)","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"init","insertText":"init()","insertTextFormat":1,"kind":4,"label":"init()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"main","insertText":"","insertTextFormat":2,"kind":0,"label":"main()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"min","insertText":"min","insertTextFormat":1,"kind":2,"label":"min","sortText":""},{"deprecated":false,"detail":"public func min<T>(a: T, b: T, others: Array<T>): T","documentation":"","filterText":"min","insertText":"min<${1:T}>(${3:a: T}, ${4:b: T}, ${5:others: Array<T>})","insertTextFormat":2,"kind":2,"label":"min<T>(a: T, b: T, others: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"print","insertText":"print","insertTextFormat":1,"kind":2,"label":"print","sortText":""},{"deprecated":false,"detail":"public func print(b: Bool, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:b: Bool}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(b: Bool, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(c: Rune, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:c: Rune}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(c: Rune, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(str: String, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:str: String}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(str: String, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"print<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"println","insertText":"println","insertTextFormat":1,"kind":2,"label":"println","sortText":""},{"deprecated":false,"detail":"public func println(): Unit","documentation":"","filterText":"println","insertText":"println()","insertTextFormat":1,"kind":2,"label":"println()","sortText":""},{"deprecated":false,"detail":"public func println(b: Bool): Unit","documentation":"","filterText":"println","insertText":"println(${1:b: Bool})","insertTextFormat":2,"kind":2,"label":"println(b: Bool)","sortText":""},{"deprecated":false,"detail":"public func println(c: Rune): Unit","documentation":"","filterText":"println","insertText":"println(${1:c: Rune})","insertTextFormat":2,"kind":2,"label":"println(c: Rune)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float16): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float16})","insertTextFormat":2,"kind":2,"label":"println(f: Float16)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float32): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float32})","insertTextFormat":2,"kind":2,"label":"println(f: Float32)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float64): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float64})","insertTextFormat":2,"kind":2,"label":"println(f: Float64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int16})","insertTextFormat":2,"kind":2,"label":"println(i: Int16)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int32})","insertTextFormat":2,"kind":2,"label":"println(i: Int32)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int64})","insertTextFormat":2,"kind":2,"label":"println(i: Int64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int8})","insertTextFormat":2,"kind":2,"label":"println(i: Int8)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt16})","insertTextFormat":2,"kind":2,"label":"println(i: UInt16)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt32})","insertTextFormat":2,"kind":2,"label":"println(i: UInt32)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt64})","insertTextFormat":2,"kind":2,"label":"println(i: UInt64)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt8})","insertTextFormat":2,"kind":2,"label":"println(i: UInt8)","sortText":""},{"deprecated":false,"detail":"public func println(str: String): Unit","documentation":"","filterText":"println","insertText":"println(${1:str: String})","insertTextFormat":2,"kind":2,"label":"println(str: String)","sortText":""},{"deprecated":false,"detail":"public func println<T>(arg: T): Unit","documentation":"","filterText":"println","insertText":"println<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"println<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"readln","insertText":"readln","insertTextFormat":1,"kind":2,"label":"readln","sortText":""},{"deprecated":false,"detail":"public func readln(): String","documentation":"","filterText":"readln","insertText":"readln()","insertTextFormat":1,"kind":2,"label":"readln()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int8","insertText":"Int8","insertTextFormat":1,"kind":14,"label":"Int8","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int16","insertText":"Int16","insertTextFormat":1,"kind":14,"label":"Int16","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int32","insertText":"Int32","insertTextFormat":1,"kind":14,"label":"Int32","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Int64","insertText":"Int64","insertTextFormat":1,"kind":14,"label":"Int64","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"IntNative","insertText":"IntNative","insertTextFormat":1,"kind":14,"label":"IntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt8","insertText":"UInt8","insertTextFormat":1,"kind":14,"label":"UInt8","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt16","insertText":"UInt16","insertTextFormat":1,"kind":14,"label":"UInt16","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt32","insertText":"UInt32","insertTextFormat":1,"kind":14,"label":"UInt32","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UInt64","insertText":"UInt64","insertTextFormat":1,"kind":14,"label":"UInt64","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UIntNative","insertText":"UIntNative","insertTextFormat":1,"kind":14,"label":"UIntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Rune","insertText":"Rune","insertTextFormat":1,"kind":14,"label":"Rune","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Nothing","insertText":"Nothing","insertTextFormat":1,"kind":14,"label":"Nothing","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Unit","insertText":"Unit","insertTextFormat":1,"kind":14,"label":"Unit","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"enum","insertText":"enum","insertTextFormat":1,"kind":14,"label":"enum","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"interface","insertText":"interface","insertTextFormat":1,"kind":14,"label":"interface","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"func","insertText":"func","insertTextFormat":1,"kind":14,"label":"func","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"const","insertText":"const","insertTextFormat":1,"kind":14,"label":"const","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"init","insertText":"init","insertTextFormat":1,"kind":14,"label":"init","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"finally","insertText":"finally","insertTextFormat":1,"kind":14,"label":"finally","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"return","insertText":"return","insertTextFormat":1,"kind":14,"label":"return","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"continue","insertText":"continue","insertTextFormat":1,"kind":14,"label":"continue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"in","insertText":"in","insertTextFormat":1,"kind":14,"label":"in","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"extend","insertText":"extend","insertTextFormat":1,"kind":14,"label":"extend","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"internal","insertText":"internal","insertTextFormat":1,"kind":14,"label":"internal","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"open","insertText":"open","insertTextFormat":1,"kind":14,"label":"open","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"foreign","insertText":"foreign","insertTextFormat":1,"kind":14,"label":"foreign","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"inout","insertText":"inout","insertTextFormat":1,"kind":14,"label":"inout","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"unsafe","insertText":"unsafe","insertTextFormat":1,"kind":14,"label":"unsafe","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"spawn","insertText":"spawn","insertTextFormat":1,"kind":14,"label":"spawn","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"main","insertText":"main","insertTextFormat":1,"kind":14,"label":"main","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"common","insertText":"common","insertTextFormat":1,"kind":14,"label":"common","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"include","insertText":"include","insertTextFormat":1,"kind":14,"label":"include","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"When","insertText":"When","insertTextFormat":1,"kind":14,"label":"When","sortText":""},{"deprecated":false,"detail":"func name(){}","documentation":"","filterText":"func","insertText":"func ${1:name}($2) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"func name(){}","sortText":""},{"deprecated":false,"detail":"func name<T>(){}","documentation":"","filterText":"func","insertText":"func ${1:name}<T>($2) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"func name<T>(){}","sortText":""},{"deprecated":false,"detail":"interface name {}","documentation":"","filterText":"interface","insertText":"interface ${1:name} {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"interface name {}","sortText":""},{"deprecated":false,"detail":"interface name<T> {}","documentation":"","filterText":"interface","insertText":"interface ${1:name}<T> {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"interface name<T> {}","sortText":""},{"deprecated":false,"detail":"enum name {}","documentation":"","filterText":"enum","insertText":"enum ${1:name} {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"enum name {}","sortText":""},{"deprecated":false,"detail":"enum name<T> {}","documentation":"","filterText":"enum","insertText":"enum ${1:name}<T> {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"enum name<T> {}","sortText":""},{"deprecated":false,"detail":"init() {}","documentation":"","filterText":"init","insertText":"init($0) {\n\t\n}","insertTextFormat":2,"kind":14,"label":"init() {}","sortText":""},{"deprecated":false,"detail":"finally {}","documentation":"","filterText":"finally","insertText":"finally {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"finally {}","sortText":""},{"deprecated":false,"detail":"extend name{}","documentation":"","filterText":"extend","insertText":"extend ${0:name}{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend name{}","sortText":""},{"deprecated":false,"detail":"extend<T> name<T>{}","documentation":"","filterText":"extend","insertText":"extend<T> ${0:name}<T>{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend<T> name<T>{}","sortText":""},{"deprecated":false,"detail":"foreign {}","documentation":"","filterText":"foreign","insertText":"foreign {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"foreign {}","sortText":""},{"deprecated":false,"detail":"main() {}","documentation":"","filterText":"main","insertText":"main() {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"main() {}","sortText":""},{"deprecated":false,"detail":"When[expression]","documentation":"","filterText":"When","insertText":"When[${0:expression}]","insertTextFormat":2,"kind":14,"label":"When[expression]","sortText":""},{"deprecated":false,"detail":"spawn {}","documentation":"","filterText":"spawn","insertText":"spawn {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn {}","sortText":""},{"deprecated":false,"detail":"spawn(threadContext) {}","documentation":"","filterText":"spawn","insertText":"spawn(${1:threadContext}) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn(threadContext) {}","sortText":""},{"deprecated":false,"detail":"Annotation","documentation":"","filterText":"Annotation","insertText":"Annotation","insertTextFormat":1,"kind":14,"label":"Annotation","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Configuration\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Configuration","insertText":"Configuration","insertTextFormat":1,"kind":7,"label":"Configuration","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.ConfigurationKey\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"ConfigurationKey","insertText":"ConfigurationKey","insertTextFormat":1,"kind":7,"label":"ConfigurationKey","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataShrinker\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataShrinker","insertText":"DataShrinker<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataShrinker<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.setOptionInfo\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"setOptionInfo","insertText":"setOptionInfo(${1:name: String}, ${2:types: Array<String>}, description: ${3:Option<String>})","insertTextFormat":2,"kind":2,"label":"setOptionInfo(name: String, types: Array<String>, description!: Option<String>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Shrink\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Shrink","insertText":"Shrink<${1:T}>","insertTextFormat":2,"kind":8,"label":"Shrink<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.random\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"random","insertText":"random<${1:T}>()","insertTextFormat":2,"kind":2,"label":"random<T>()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public class StackOverflowError <: Error","documentation":"","filterText":"StackOverflowError","insertText":"StackOverflowError","insertTextFormat":1,"kind":7,"label":"StackOverflowError","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope","insertTextFormat":1,"kind":2,"label":"exclusiveScope","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}> { => ${3:T} }","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T> { => T }","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}>(${3:fn: () -> T})","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T>(fn: () -> T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"IntNative","insertText":"IntNative","insertTextFormat":1,"kind":14,"label":"IntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UIntNative","insertText":"UIntNative","insertTextFormat":1,"kind":14,"label":"UIntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"VArray","insertText":"VArray","insertTextFormat":1,"kind":14,"label":"VArray","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"var","insertText":"var","insertTextFormat":1,"kind":14,"label":"var","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"private","insertText":"private","insertTextFormat":1,"kind":14,"label":"private","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"override","insertText":"override","insertTextFormat":1,"kind":14,"label":"override","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(${0:initElement: (Int64) -> T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(repeat!: T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(repeat: ${0:T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(repeat!: T)","sortText":""},{"deprecated":false,"detail":"IfAvailable","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable","insertTextFormat":1,"kind":14,"label":"IfAvailable","sortText":""},{"deprecated":false,"detail":"IfAvailable(level: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:level: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(level: , {=> }, {=> })","sortText":""},{"deprecated":false,"detail":"IfAvailable(syscap: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:syscap: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(syscap: , {=> }, {=> })","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataProvider\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataProvider","insertText":"DataProvider<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataProvider<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""}]} | 1 | +{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public class StackOverflowError <: Error","documentation":"","filterText":"StackOverflowError","insertText":"StackOverflowError","insertTextFormat":1,"kind":7,"label":"StackOverflowError","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope","insertTextFormat":1,"kind":2,"label":"exclusiveScope","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}> { => ${3:T} }","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T> { => T }","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}>(${3:fn: () -> T})","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T>(fn: () -> T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2","insertTextFormat":1,"kind":2,"label":"zeroValue2","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue2<T>(): T","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue2<T>()","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"IntNative","insertText":"IntNative","insertTextFormat":1,"kind":14,"label":"IntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"UIntNative","insertText":"UIntNative","insertTextFormat":1,"kind":14,"label":"UIntNative","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"VArray","insertText":"VArray","insertTextFormat":1,"kind":14,"label":"VArray","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"var","insertText":"var","insertTextFormat":1,"kind":14,"label":"var","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"private","insertText":"private","insertTextFormat":1,"kind":14,"label":"private","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"override","insertText":"override","insertTextFormat":1,"kind":14,"label":"override","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclave","insertText":"exclave","insertTextFormat":1,"kind":14,"label":"exclave","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(${0:initElement: (Int64) -> T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(initElement: (Int64) -> T)","sortText":""},{"deprecated":false,"detail":"VArray<T, $IntLiteral>(repeat!: T)","documentation":"","filterText":"VArray","insertText":"VArray<${1:T}, $${2:IntLiteral}>(repeat: ${0:T})","insertTextFormat":2,"kind":14,"label":"VArray<T, $IntLiteral>(repeat!: T)","sortText":""},{"deprecated":false,"detail":"IfAvailable","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable","insertTextFormat":1,"kind":14,"label":"IfAvailable","sortText":""},{"deprecated":false,"detail":"IfAvailable(level: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:level: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(level: , {=> }, {=> })","sortText":""},{"deprecated":false,"detail":"IfAvailable(syscap: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:syscap: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(syscap: , {=> }, {=> })","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataProvider\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataProvider","insertText":"DataProvider<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataProvider<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"class B <: BBB","documentation":"","filterText":"B","insertText":"B","insertTextFormat":1,"kind":7,"label":"B","sortText":""},{"deprecated":false,"detail":"open class BBB","documentation":"","filterText":"BBB","insertText":"BBB","insertTextFormat":1,"kind":7,"label":"BBB","sortText":""},{"deprecated":false,"detail":"public class Box<T>","documentation":"","filterText":"Box","insertText":"Box<${1:T}>","insertTextFormat":2,"kind":7,"label":"Box<T>","sortText":""},{"deprecated":false,"detail":"public func init(v: T)","documentation":"","filterText":"Box<T>","insertText":"Box<${1:T}>(${3:v: T})","insertTextFormat":2,"kind":3,"label":"Box<T>(v: T)","sortText":""},{"deprecated":false,"detail":"public type Byte = UInt8","documentation":"","filterText":"Byte","insertText":"Byte","insertTextFormat":1,"kind":7,"label":"Byte","sortText":""},{"deprecated":false,"detail":"public interface Comparable<T> extends Equatable<T>, Less<T>, Greater<T>, LessOrEqual<T>, GreaterOrEqual<T>","documentation":"","filterText":"Comparable","insertText":"Comparable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Comparable<T>","sortText":""},{"deprecated":false,"detail":"public interface Countable<T>","documentation":"","filterText":"Countable","insertText":"Countable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Countable<T>","sortText":""},{"deprecated":false,"detail":"public interface Equatable<T> extends Equal<T>, NotEqual<T>","documentation":"","filterText":"Equatable","insertText":"Equatable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Equatable<T>","sortText":""},{"deprecated":false,"detail":"public interface Hashable","documentation":"","filterText":"Hashable","insertText":"Hashable","insertTextFormat":1,"kind":8,"label":"Hashable","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface Iterable<E>","documentation":"","filterText":"Iterable","insertText":"Iterable<${1:E}>","insertTextFormat":2,"kind":8,"label":"Iterable<E>","sortText":""},{"deprecated":false,"detail":"public struct LibC","documentation":"","filterText":"LibC","insertText":"LibC","insertTextFormat":1,"kind":22,"label":"LibC","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"LibC","insertText":"LibC()","insertTextFormat":1,"kind":3,"label":"LibC()","sortText":""},{"deprecated":false,"detail":"public open class Object <: Any","documentation":"","filterText":"Object","insertText":"Object","insertTextFormat":1,"kind":7,"label":"Object","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Object","insertText":"Object()","insertTextFormat":1,"kind":3,"label":"Object()","sortText":""},{"deprecated":false,"detail":"public class StringBuilder <: ToString","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder","insertTextFormat":1,"kind":7,"label":"StringBuilder","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder()","insertTextFormat":1,"kind":3,"label":"StringBuilder()","sortText":""},{"deprecated":false,"detail":"public func init(capacity: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:capacity: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(capacity: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(r: Rune, n: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:r: Rune}, ${2:n: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(r: Rune, n: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(str: String)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:str: String})","insertTextFormat":2,"kind":3,"label":"StringBuilder(str: String)","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"StringBuilder(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Bool","insertText":"Bool","insertTextFormat":1,"kind":14,"label":"Bool","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"break","insertText":"break","insertTextFormat":1,"kind":14,"label":"break","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"public","insertText":"public","insertTextFormat":1,"kind":14,"label":"public","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"abstract","insertText":"abstract","insertTextFormat":1,"kind":14,"label":"abstract","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"backward","insertText":"backward","insertTextFormat":1,"kind":14,"label":"backward","sortText":""},{"deprecated":false,"detail":"IfAvailable","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable","insertTextFormat":1,"kind":14,"label":"IfAvailable","sortText":""},{"deprecated":false,"detail":"IfAvailable(level: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:level: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(level: , {=> }, {=> })","sortText":""},{"deprecated":false,"detail":"IfAvailable(syscap: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:syscap: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(syscap: , {=> }, {=> })","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Arbitrary\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Arbitrary","insertText":"Arbitrary<${1:T}>","insertTextFormat":2,"kind":8,"label":"Arbitrary<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.blackBox\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"blackBox","insertText":"blackBox<${1:T}>(${3:input: T})","insertTextFormat":2,"kind":2,"label":"blackBox<T>(input: T)","sortText":""}]} | 1 | +{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"class B <: BBB","documentation":"","filterText":"B","insertText":"B","insertTextFormat":1,"kind":7,"label":"B","sortText":""},{"deprecated":false,"detail":"open class BBB","documentation":"","filterText":"BBB","insertText":"BBB","insertTextFormat":1,"kind":7,"label":"BBB","sortText":""},{"deprecated":false,"detail":"public class Box<T>","documentation":"","filterText":"Box","insertText":"Box<${1:T}>","insertTextFormat":2,"kind":7,"label":"Box<T>","sortText":""},{"deprecated":false,"detail":"public func init(v: T)","documentation":"","filterText":"Box<T>","insertText":"Box<${1:T}>(${3:v: T})","insertTextFormat":2,"kind":3,"label":"Box<T>(v: T)","sortText":""},{"deprecated":false,"detail":"public type Byte = UInt8","documentation":"","filterText":"Byte","insertText":"Byte","insertTextFormat":1,"kind":7,"label":"Byte","sortText":""},{"deprecated":false,"detail":"public interface Comparable<T> extends Equatable<T>, Less<T>, Greater<T>, LessOrEqual<T>, GreaterOrEqual<T>","documentation":"","filterText":"Comparable","insertText":"Comparable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Comparable<T>","sortText":""},{"deprecated":false,"detail":"public sealed open interface Copyable","documentation":"","filterText":"Copyable","insertText":"Copyable","insertTextFormat":1,"kind":8,"label":"Copyable","sortText":""},{"deprecated":false,"detail":"public interface Countable<T>","documentation":"","filterText":"Countable","insertText":"Countable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Countable<T>","sortText":""},{"deprecated":false,"detail":"public interface Equatable<T> extends Equal<T>, NotEqual<T>","documentation":"","filterText":"Equatable","insertText":"Equatable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Equatable<T>","sortText":""},{"deprecated":false,"detail":"public interface Hashable","documentation":"","filterText":"Hashable","insertText":"Hashable","insertTextFormat":1,"kind":8,"label":"Hashable","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public interface Iterable<E>","documentation":"","filterText":"Iterable","insertText":"Iterable<${1:E}>","insertTextFormat":2,"kind":8,"label":"Iterable<E>","sortText":""},{"deprecated":false,"detail":"public struct LibC","documentation":"","filterText":"LibC","insertText":"LibC","insertTextFormat":1,"kind":22,"label":"LibC","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"LibC","insertText":"LibC()","insertTextFormat":1,"kind":3,"label":"LibC()","sortText":""},{"deprecated":false,"detail":"public open class Object <: Any","documentation":"","filterText":"Object","insertText":"Object","insertTextFormat":1,"kind":7,"label":"Object","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Object","insertText":"Object()","insertTextFormat":1,"kind":3,"label":"Object()","sortText":""},{"deprecated":false,"detail":"public class StringBuilder <: ToString","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder","insertTextFormat":1,"kind":7,"label":"StringBuilder","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder()","insertTextFormat":1,"kind":3,"label":"StringBuilder()","sortText":""},{"deprecated":false,"detail":"public func init(capacity: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:capacity: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(capacity: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(r: Rune, n: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:r: Rune}, ${2:n: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(r: Rune, n: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(str: String)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:str: String})","insertTextFormat":2,"kind":3,"label":"StringBuilder(str: String)","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"StringBuilder(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"Bool","insertText":"Bool","insertTextFormat":1,"kind":14,"label":"Bool","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"break","insertText":"break","insertTextFormat":1,"kind":14,"label":"break","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"public","insertText":"public","insertTextFormat":1,"kind":14,"label":"public","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"abstract","insertText":"abstract","insertTextFormat":1,"kind":14,"label":"abstract","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"backward","insertText":"backward","insertTextFormat":1,"kind":14,"label":"backward","sortText":""},{"deprecated":false,"detail":"IfAvailable","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable","insertTextFormat":1,"kind":14,"label":"IfAvailable","sortText":""},{"deprecated":false,"detail":"IfAvailable(level: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:level: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(level: , {=> }, {=> })","sortText":""},{"deprecated":false,"detail":"IfAvailable(syscap: , {=> }, {=> })","documentation":"","filterText":"IfAvailable","insertText":"IfAvailable(${1:syscap: ,} {=>\n\t$2\n}, {=>\n\t$3\n})","insertTextFormat":2,"kind":14,"label":"IfAvailable(syscap: , {=> }, {=> })","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.Arbitrary\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"Arbitrary","insertText":"Arbitrary<${1:T}>","insertTextFormat":2,"kind":8,"label":"Arbitrary<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.blackBox\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"blackBox","insertText":"blackBox<${1:T}>(${3:input: T})","insertTextFormat":2,"kind":2,"label":"blackBox<T>(input: T)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public enum AnnotationKind","documentation":"","filterText":"AnnotationKind","insertText":"AnnotationKind","insertTextFormat":1,"kind":13,"label":"AnnotationKind","sortText":""},{"deprecated":false,"detail":"public struct CPointerHandle<T>","documentation":"","filterText":"CPointerHandle","insertText":"CPointerHandle<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerHandle<T>","sortText":""},{"deprecated":true,"detail":"public func init()","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>()","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>()","sortText":""},{"deprecated":true,"detail":"public func init(ptr: CPointer<T>, arr: Array<T>)","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>(${3:ptr: CPointer<T>}, ${4:arr: Array<T>})","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>(ptr: CPointer<T>, arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"open class DDD","documentation":"","filterText":"DDD","insertText":"DDD","insertTextFormat":1,"kind":7,"label":"DDD","sortText":""},{"deprecated":false,"detail":"public struct DefaultHasher","documentation":"","filterText":"DefaultHasher","insertText":"DefaultHasher","insertTextFormat":1,"kind":22,"label":"DefaultHasher","sortText":""},{"deprecated":false,"detail":"public func init(res!: Int64 = 0)","documentation":"","filterText":"DefaultHasher","insertText":"DefaultHasher(res: ${1:Int64 = 0})","insertTextFormat":2,"kind":3,"label":"DefaultHasher(res!: Int64 = 0)","sortText":""},{"deprecated":false,"detail":"public struct Duration","documentation":"","filterText":"Duration","insertText":"Duration","insertTextFormat":1,"kind":22,"label":"Duration","sortText":""},{"deprecated":false,"detail":"public enum Endian","documentation":"","filterText":"Endian","insertText":"Endian","insertTextFormat":1,"kind":13,"label":"Endian","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public enum Ordering","documentation":"","filterText":"Ordering","insertText":"Ordering","insertTextFormat":1,"kind":13,"label":"Ordering","sortText":""},{"deprecated":false,"detail":"public class StringBuilder <: ToString","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder","insertTextFormat":1,"kind":7,"label":"StringBuilder","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder()","insertTextFormat":1,"kind":3,"label":"StringBuilder()","sortText":""},{"deprecated":false,"detail":"public func init(capacity: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:capacity: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(capacity: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(r: Rune, n: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:r: Rune}, ${2:n: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(r: Rune, n: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(str: String)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:str: String})","insertTextFormat":2,"kind":3,"label":"StringBuilder(str: String)","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"StringBuilder(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public class Thread","documentation":"","filterText":"Thread","insertText":"Thread","insertTextFormat":1,"kind":7,"label":"Thread","sortText":""},{"deprecated":false,"detail":"public interface ThreadContext","documentation":"","filterText":"ThreadContext","insertText":"ThreadContext","insertTextFormat":1,"kind":8,"label":"ThreadContext","sortText":""},{"deprecated":false,"detail":"public class ThreadLocal<T>","documentation":"","filterText":"ThreadLocal","insertText":"ThreadLocal<${1:T}>","insertTextFormat":2,"kind":7,"label":"ThreadLocal<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ThreadLocal<T>","insertText":"ThreadLocal<${1:T}>()","insertTextFormat":2,"kind":3,"label":"ThreadLocal<T>()","sortText":""},{"deprecated":false,"detail":"public class ThreadSnapshot <: ToString","documentation":"","filterText":"ThreadSnapshot","insertText":"ThreadSnapshot","insertTextFormat":1,"kind":7,"label":"ThreadSnapshot","sortText":""},{"deprecated":false,"detail":"public enum ThreadState <: ToString","documentation":"","filterText":"ThreadState","insertText":"ThreadState","insertTextFormat":1,"kind":13,"label":"ThreadState","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData","insertTextFormat":1,"kind":2,"label":"acquireArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func acquireArrayRawData<T>(arr: Array<T>): CPointerHandle<T>","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData<${1:T}>(${3:arr: Array<T>})","insertTextFormat":2,"kind":2,"label":"acquireArrayRawData<T>(arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"readln","insertText":"readln","insertTextFormat":1,"kind":2,"label":"readln","sortText":""},{"deprecated":false,"detail":"public func readln(): String","documentation":"","filterText":"readln","insertText":"readln()","insertTextFormat":1,"kind":2,"label":"readln()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData","insertTextFormat":1,"kind":2,"label":"releaseArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func releaseArrayRawData<T>(handle: CPointerHandle<T>): Unit","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData<${1:T}>(${3:handle: CPointerHandle<T>})","insertTextFormat":2,"kind":2,"label":"releaseArrayRawData<T>(handle: CPointerHandle<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"do","insertText":"do","insertTextFormat":1,"kind":14,"label":"do","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"extend","insertText":"extend","insertTextFormat":1,"kind":14,"label":"extend","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"protected","insertText":"protected","insertTextFormat":1,"kind":14,"label":"protected","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"override","insertText":"override","insertTextFormat":1,"kind":14,"label":"override","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"redef","insertText":"redef","insertTextFormat":1,"kind":14,"label":"redef","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sealed","insertText":"sealed","insertTextFormat":1,"kind":14,"label":"sealed","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"include","insertText":"include","insertTextFormat":1,"kind":14,"label":"include","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"mode","insertText":"mode","insertTextFormat":1,"kind":14,"label":"mode","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"forward","insertText":"forward","insertTextFormat":1,"kind":14,"label":"forward","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"backward","insertText":"backward","insertTextFormat":1,"kind":14,"label":"backward","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"dual","insertText":"dual","insertTextFormat":1,"kind":14,"label":"dual","sortText":""},{"deprecated":false,"detail":"do {} while (expression)","documentation":"","filterText":"do","insertText":"do {\n\t\n} while (${0:expression})","insertTextFormat":2,"kind":14,"label":"do {} while (expression)","sortText":""},{"deprecated":false,"detail":"extend name{}","documentation":"","filterText":"extend","insertText":"extend ${0:name}{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend name{}","sortText":""},{"deprecated":false,"detail":"extend<T> name<T>{}","documentation":"","filterText":"extend","insertText":"extend<T> ${0:name}<T>{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend<T> name<T>{}","sortText":""},{"deprecated":false,"detail":"Deprecated","documentation":"","filterText":"Deprecated","insertText":"Deprecated","insertTextFormat":1,"kind":14,"label":"Deprecated","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataProvider\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataProvider","insertText":"DataProvider<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataProvider<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataStrategy\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataStrategy","insertText":"DataStrategy<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataStrategy<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataShrinker\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataShrinker","insertText":"DataShrinker<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataShrinker<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.random\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"random","insertText":"random<${1:T}>()","insertTextFormat":2,"kind":2,"label":"random<T>()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} | 1 | +{"id":3,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public enum AnnotationKind","documentation":"","filterText":"AnnotationKind","insertText":"AnnotationKind","insertTextFormat":1,"kind":13,"label":"AnnotationKind","sortText":""},{"deprecated":false,"detail":"public struct CPointerHandle<T>","documentation":"","filterText":"CPointerHandle","insertText":"CPointerHandle<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerHandle<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>()","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>()","sortText":""},{"deprecated":false,"detail":"public func init(ptr: CPointer<T>, arr: Array<T>)","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>(${3:ptr: CPointer<T>}, ${4:arr: Array<T>})","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>(ptr: CPointer<T>, arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"open class DDD","documentation":"","filterText":"DDD","insertText":"DDD","insertTextFormat":1,"kind":7,"label":"DDD","sortText":""},{"deprecated":false,"detail":"public struct DefaultHasher","documentation":"","filterText":"DefaultHasher","insertText":"DefaultHasher","insertTextFormat":1,"kind":22,"label":"DefaultHasher","sortText":""},{"deprecated":false,"detail":"public func init(res!: Int64 = 0)","documentation":"","filterText":"DefaultHasher","insertText":"DefaultHasher(res: ${1:Int64 = 0})","insertTextFormat":2,"kind":3,"label":"DefaultHasher(res!: Int64 = 0)","sortText":""},{"deprecated":false,"detail":"public struct Duration","documentation":"","filterText":"Duration","insertText":"Duration","insertTextFormat":1,"kind":22,"label":"Duration","sortText":""},{"deprecated":false,"detail":"public enum Endian","documentation":"","filterText":"Endian","insertText":"Endian","insertTextFormat":1,"kind":13,"label":"Endian","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public enum Ordering","documentation":"","filterText":"Ordering","insertText":"Ordering","insertTextFormat":1,"kind":13,"label":"Ordering","sortText":""},{"deprecated":false,"detail":"public class StringBuilder <: ToString","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder","insertTextFormat":1,"kind":7,"label":"StringBuilder","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder()","insertTextFormat":1,"kind":3,"label":"StringBuilder()","sortText":""},{"deprecated":false,"detail":"public func init(capacity: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:capacity: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(capacity: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(r: Rune, n: Int64)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:r: Rune}, ${2:n: Int64})","insertTextFormat":2,"kind":3,"label":"StringBuilder(r: Rune, n: Int64)","sortText":""},{"deprecated":false,"detail":"public func init(str: String)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:str: String})","insertTextFormat":2,"kind":3,"label":"StringBuilder(str: String)","sortText":""},{"deprecated":false,"detail":"public func init(value: Array<Rune>)","documentation":"","filterText":"StringBuilder","insertText":"StringBuilder(${1:value: Array<Rune>})","insertTextFormat":2,"kind":3,"label":"StringBuilder(value: Array<Rune>)","sortText":""},{"deprecated":false,"detail":"public class Thread","documentation":"","filterText":"Thread","insertText":"Thread","insertTextFormat":1,"kind":7,"label":"Thread","sortText":""},{"deprecated":false,"detail":"public interface ThreadContext","documentation":"","filterText":"ThreadContext","insertText":"ThreadContext","insertTextFormat":1,"kind":8,"label":"ThreadContext","sortText":""},{"deprecated":false,"detail":"public class ThreadLocal<T>","documentation":"","filterText":"ThreadLocal","insertText":"ThreadLocal<${1:T}>","insertTextFormat":2,"kind":7,"label":"ThreadLocal<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ThreadLocal<T>","insertText":"ThreadLocal<${1:T}>()","insertTextFormat":2,"kind":3,"label":"ThreadLocal<T>()","sortText":""},{"deprecated":false,"detail":"public class ThreadSnapshot <: ToString","documentation":"","filterText":"ThreadSnapshot","insertText":"ThreadSnapshot","insertTextFormat":1,"kind":7,"label":"ThreadSnapshot","sortText":""},{"deprecated":false,"detail":"public enum ThreadState <: ToString","documentation":"","filterText":"ThreadState","insertText":"ThreadState","insertTextFormat":1,"kind":13,"label":"ThreadState","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData","insertTextFormat":1,"kind":2,"label":"acquireArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func acquireArrayRawData<T>(arr: Array<T>): CPointerHandle<T>","documentation":"","filterText":"acquireArrayRawData","insertText":"acquireArrayRawData<${1:T}>(${3:arr: Array<T>})","insertTextFormat":2,"kind":2,"label":"acquireArrayRawData<T>(arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"readln","insertText":"readln","insertTextFormat":1,"kind":2,"label":"readln","sortText":""},{"deprecated":false,"detail":"public func readln(): String","documentation":"","filterText":"readln","insertText":"readln()","insertTextFormat":1,"kind":2,"label":"readln()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData","insertTextFormat":1,"kind":2,"label":"releaseArrayRawData","sortText":""},{"deprecated":false,"detail":"public unsafe func releaseArrayRawData<T>(handle: CPointerHandle<T>): Unit","documentation":"","filterText":"releaseArrayRawData","insertText":"releaseArrayRawData<${1:T}>(${3:handle: CPointerHandle<T>})","insertTextFormat":2,"kind":2,"label":"releaseArrayRawData<T>(handle: CPointerHandle<T>)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"do","insertText":"do","insertTextFormat":1,"kind":14,"label":"do","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"extend","insertText":"extend","insertTextFormat":1,"kind":14,"label":"extend","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"protected","insertText":"protected","insertTextFormat":1,"kind":14,"label":"protected","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"override","insertText":"override","insertTextFormat":1,"kind":14,"label":"override","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"redef","insertText":"redef","insertTextFormat":1,"kind":14,"label":"redef","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sealed","insertText":"sealed","insertTextFormat":1,"kind":14,"label":"sealed","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"demode","insertText":"demode","insertTextFormat":1,"kind":14,"label":"demode","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"include","insertText":"include","insertTextFormat":1,"kind":14,"label":"include","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"mode","insertText":"mode","insertTextFormat":1,"kind":14,"label":"mode","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"forward","insertText":"forward","insertTextFormat":1,"kind":14,"label":"forward","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"backward","insertText":"backward","insertTextFormat":1,"kind":14,"label":"backward","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"dual","insertText":"dual","insertTextFormat":1,"kind":14,"label":"dual","sortText":""},{"deprecated":false,"detail":"do {} while (expression)","documentation":"","filterText":"do","insertText":"do {\n\t\n} while (${0:expression})","insertTextFormat":2,"kind":14,"label":"do {} while (expression)","sortText":""},{"deprecated":false,"detail":"extend name{}","documentation":"","filterText":"extend","insertText":"extend ${0:name}{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend name{}","sortText":""},{"deprecated":false,"detail":"extend<T> name<T>{}","documentation":"","filterText":"extend","insertText":"extend<T> ${0:name}<T>{\n\t\n}","insertTextFormat":2,"kind":14,"label":"extend<T> name<T>{}","sortText":""},{"deprecated":false,"detail":"Deprecated","documentation":"","filterText":"Deprecated","insertText":"Deprecated","insertTextFormat":1,"kind":14,"label":"Deprecated","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataProvider\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataProvider","insertText":"DataProvider<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataProvider<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataStrategy\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataStrategy","insertText":"DataStrategy<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataStrategy<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataShrinker\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataShrinker","insertText":"DataShrinker<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataShrinker<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.random\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"random","insertText":"random<${1:T}>()","insertTextFormat":2,"kind":2,"label":"random<T>()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.KeyRandom\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"KeyRandom","insertText":"KeyRandom","insertTextFormat":1,"kind":22,"label":"KeyRandom","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public type ZZ = Z","documentation":"","filterText":"ZZZ","insertText":"ZZZ","insertTextFormat":1,"kind":7,"label":"ZZZ","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ZZZ","insertText":"ZZZ()","insertTextFormat":1,"kind":3,"label":"ZZZ()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public type ZZ = Z","documentation":"","filterText":"ZZZ","insertText":"ZZZ","insertTextFormat":1,"kind":7,"label":"ZZZ","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ZZZ","insertText":"ZZZ()","insertTextFormat":1,"kind":3,"label":"ZZZ()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2","insertTextFormat":1,"kind":2,"label":"zeroValue2","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue2<T>(): T","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue2<T>()","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class Z","documentation":"","filterText":"Z","insertText":"Z","insertTextFormat":1,"kind":7,"label":"Z","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Z","insertText":"Z()","insertTextFormat":1,"kind":3,"label":"Z()","sortText":""},{"deprecated":false,"detail":"public type ZZ = Z","documentation":"","filterText":"ZZ","insertText":"ZZ","insertTextFormat":1,"kind":7,"label":"ZZ","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ZZ","insertText":"ZZ()","insertTextFormat":1,"kind":3,"label":"ZZ()","sortText":""},{"deprecated":false,"detail":"public type ZZ = Z","documentation":"","filterText":"ZZZ","insertText":"ZZZ","insertTextFormat":1,"kind":7,"label":"ZZZ","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ZZZ","insertText":"ZZZ()","insertTextFormat":1,"kind":3,"label":"ZZZ()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class Z","documentation":"","filterText":"Z","insertText":"Z","insertTextFormat":1,"kind":7,"label":"Z","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Z","insertText":"Z()","insertTextFormat":1,"kind":3,"label":"Z()","sortText":""},{"deprecated":false,"detail":"public type ZZ = Z","documentation":"","filterText":"ZZ","insertText":"ZZ","insertTextFormat":1,"kind":7,"label":"ZZ","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ZZ","insertText":"ZZ()","insertTextFormat":1,"kind":3,"label":"ZZ()","sortText":""},{"deprecated":false,"detail":"public type ZZ = Z","documentation":"","filterText":"ZZZ","insertText":"ZZZ","insertTextFormat":1,"kind":7,"label":"ZZZ","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ZZZ","insertText":"ZZZ()","insertTextFormat":1,"kind":3,"label":"ZZZ()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2","insertTextFormat":1,"kind":2,"label":"zeroValue2","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue2<T>(): T","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue2<T>()","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zoo","insertText":"zoo","insertTextFormat":1,"kind":2,"label":"zoo","sortText":""},{"deprecated":false,"detail":"internal func zoo(): Unit","documentation":"","filterText":"zoo","insertText":"zoo()","insertTextFormat":1,"kind":2,"label":"zoo()","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2","insertTextFormat":1,"kind":2,"label":"zeroValue2","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue2<T>(): T","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue2<T>()","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zoo","insertText":"zoo","insertTextFormat":1,"kind":2,"label":"zoo","sortText":""},{"deprecated":false,"detail":"internal func zoo(): Unit","documentation":"","filterText":"zoo","insertText":"zoo()","insertTextFormat":1,"kind":2,"label":"zoo()","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zoo","insertText":"zoo","insertTextFormat":1,"kind":2,"label":"zoo","sortText":""},{"deprecated":false,"detail":"internal func zoo(): Unit","documentation":"","filterText":"zoo","insertText":"zoo()","insertTextFormat":1,"kind":2,"label":"zoo()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sizeOf","insertText":"sizeOf","insertTextFormat":1,"kind":2,"label":"sizeOf","sortText":""},{"deprecated":false,"detail":"public func sizeOf<T>(): UIntNative","documentation":"","filterText":"sizeOf","insertText":"sizeOf<${1:T}>()","insertTextFormat":2,"kind":2,"label":"sizeOf<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue","insertText":"zeroValue","insertTextFormat":1,"kind":2,"label":"zeroValue","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2","insertTextFormat":1,"kind":2,"label":"zeroValue2","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue2<T>(): T","documentation":"","filterText":"zeroValue2","insertText":"zeroValue2<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue2<T>()","sortText":""},{"deprecated":false,"detail":"public unsafe func zeroValue<T>(): T","documentation":"","filterText":"zeroValue","insertText":"zeroValue<${1:T}>()","insertTextFormat":2,"kind":2,"label":"zeroValue<T>()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"zoo","insertText":"zoo","insertTextFormat":1,"kind":2,"label":"zoo","sortText":""},{"deprecated":false,"detail":"internal func zoo(): Unit","documentation":"","filterText":"zoo","insertText":"zoo()","insertTextFormat":1,"kind":2,"label":"zoo()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"synchronized","insertText":"synchronized","insertTextFormat":1,"kind":14,"label":"synchronized","sortText":""},{"deprecated":false,"detail":"Frozen","documentation":"","filterText":"Frozen","insertText":"Frozen","insertTextFormat":1,"kind":14,"label":"Frozen","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingDec","insertText":"carryingDec()","insertTextFormat":1,"kind":2,"label":"carryingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingInc","insertText":"carryingInc()","insertTextFormat":1,"kind":2,"label":"carryingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingNeg","insertText":"carryingNeg()","insertTextFormat":1,"kind":2,"label":"carryingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShl","insertText":"carryingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShr","insertText":"carryingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedDec","insertText":"checkedDec()","insertTextFormat":1,"kind":2,"label":"checkedDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedInc","insertText":"checkedInc()","insertTextFormat":1,"kind":2,"label":"checkedInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedNeg","insertText":"checkedNeg()","insertTextFormat":1,"kind":2,"label":"checkedNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShl","insertText":"checkedShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShr","insertText":"checkedShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Int8): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Int8})","insertTextFormat":2,"kind":2,"label":"compare(other: Int8)","sortText":""},{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I3\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo3","insertText":"foo3()","insertTextFormat":1,"kind":2,"label":"foo3()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.Formattable\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"format","insertText":"format(${1:fmt: String})","insertTextFormat":2,"kind":2,"label":"format(fmt: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Int8","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingDec","insertText":"saturatingDec()","insertTextFormat":1,"kind":2,"label":"saturatingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingInc","insertText":"saturatingInc()","insertTextFormat":1,"kind":2,"label":"saturatingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingNeg","insertText":"saturatingNeg()","insertTextFormat":1,"kind":2,"label":"saturatingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShl","insertText":"saturatingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShr","insertText":"saturatingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.SwapEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"swapBytes","insertText":"swapBytes()","insertTextFormat":1,"kind":2,"label":"swapBytes()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingDec","insertText":"throwingDec()","insertTextFormat":1,"kind":2,"label":"throwingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingInc","insertText":"throwingInc()","insertTextFormat":1,"kind":2,"label":"throwingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingNeg","insertText":"throwingNeg()","insertTextFormat":1,"kind":2,"label":"throwingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShl","insertText":"throwingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShr","insertText":"throwingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.RadixConvertible<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"toString","insertText":"toString(radix: ${1:Int64})","insertTextFormat":2,"kind":2,"label":"toString(radix!: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingDec","insertText":"wrappingDec()","insertTextFormat":1,"kind":2,"label":"wrappingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingInc","insertText":"wrappingInc()","insertTextFormat":1,"kind":2,"label":"wrappingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingNeg","insertText":"wrappingNeg()","insertTextFormat":1,"kind":2,"label":"wrappingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShl","insertText":"wrappingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShr","insertText":"wrappingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingDec","insertText":"carryingDec()","insertTextFormat":1,"kind":2,"label":"carryingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingInc","insertText":"carryingInc()","insertTextFormat":1,"kind":2,"label":"carryingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingNeg","insertText":"carryingNeg()","insertTextFormat":1,"kind":2,"label":"carryingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShl","insertText":"carryingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CarryingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"carryingShr","insertText":"carryingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"carryingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedDec","insertText":"checkedDec()","insertTextFormat":1,"kind":2,"label":"checkedDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedInc","insertText":"checkedInc()","insertTextFormat":1,"kind":2,"label":"checkedInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedNeg","insertText":"checkedNeg()","insertTextFormat":1,"kind":2,"label":"checkedNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShl","insertText":"checkedShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.CheckedOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"checkedShr","insertText":"checkedShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"checkedShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Int8): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Int8})","insertTextFormat":2,"kind":2,"label":"compare(other: Int8)","sortText":""},{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I3\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo3","insertText":"foo3()","insertTextFormat":1,"kind":2,"label":"foo3()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.Formattable\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"format","insertText":"format(${1:fmt: String})","insertTextFormat":2,"kind":2,"label":"format(fmt: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public open func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Int8","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingDec","insertText":"saturatingDec()","insertTextFormat":1,"kind":2,"label":"saturatingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingInc","insertText":"saturatingInc()","insertTextFormat":1,"kind":2,"label":"saturatingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingNeg","insertText":"saturatingNeg()","insertTextFormat":1,"kind":2,"label":"saturatingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShl","insertText":"saturatingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.SaturatingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"saturatingShr","insertText":"saturatingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"saturatingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.SwapEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"swapBytes","insertText":"swapBytes()","insertTextFormat":1,"kind":2,"label":"swapBytes()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingDec","insertText":"throwingDec()","insertTextFormat":1,"kind":2,"label":"throwingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingInc","insertText":"throwingInc()","insertTextFormat":1,"kind":2,"label":"throwingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingNeg","insertText":"throwingNeg()","insertTextFormat":1,"kind":2,"label":"throwingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShl","insertText":"throwingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.ThrowingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"throwingShr","insertText":"throwingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"throwingShr(y: UInt64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.RadixConvertible<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"toString","insertText":"toString(radix: ${1:Int64})","insertTextFormat":2,"kind":2,"label":"toString(radix!: Int64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingDec","insertText":"wrappingDec()","insertTextFormat":1,"kind":2,"label":"wrappingDec()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingInc","insertText":"wrappingInc()","insertTextFormat":1,"kind":2,"label":"wrappingInc()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingNeg","insertText":"wrappingNeg()","insertTextFormat":1,"kind":2,"label":"wrappingNeg()","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShl","insertText":"wrappingShl(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShl(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.overflow.WrappingOp<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.overflow","documentation":"","filterText":"wrappingShr","insertText":"wrappingShr(${1:y: UInt64})","insertTextFormat":2,"kind":2,"label":"wrappingShr(y: UInt64)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Rune): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Rune})","insertTextFormat":2,"kind":2,"label":"compare(other: Rune)","sortText":""},{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I1\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo1","insertText":"foo1()","insertTextFormat":1,"kind":2,"label":"foo1()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.Formattable\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"format","insertText":"format(${1:fmt: String})","insertTextFormat":2,"kind":2,"label":"format(fmt: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAscii","insertText":"isAscii","insertTextFormat":1,"kind":2,"label":"isAscii","sortText":""},{"deprecated":false,"detail":"public func isAscii(): Bool","documentation":"","filterText":"isAscii","insertText":"isAscii()","insertTextFormat":1,"kind":2,"label":"isAscii()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiControl","insertText":"isAsciiControl","insertTextFormat":1,"kind":2,"label":"isAsciiControl","sortText":""},{"deprecated":false,"detail":"public func isAsciiControl(): Bool","documentation":"","filterText":"isAsciiControl","insertText":"isAsciiControl()","insertTextFormat":1,"kind":2,"label":"isAsciiControl()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiGraphic","insertText":"isAsciiGraphic","insertTextFormat":1,"kind":2,"label":"isAsciiGraphic","sortText":""},{"deprecated":false,"detail":"public func isAsciiGraphic(): Bool","documentation":"","filterText":"isAsciiGraphic","insertText":"isAsciiGraphic()","insertTextFormat":1,"kind":2,"label":"isAsciiGraphic()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiHex","insertText":"isAsciiHex","insertTextFormat":1,"kind":2,"label":"isAsciiHex","sortText":""},{"deprecated":false,"detail":"public func isAsciiHex(): Bool","documentation":"","filterText":"isAsciiHex","insertText":"isAsciiHex()","insertTextFormat":1,"kind":2,"label":"isAsciiHex()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiLetter","insertText":"isAsciiLetter","insertTextFormat":1,"kind":2,"label":"isAsciiLetter","sortText":""},{"deprecated":false,"detail":"public func isAsciiLetter(): Bool","documentation":"","filterText":"isAsciiLetter","insertText":"isAsciiLetter()","insertTextFormat":1,"kind":2,"label":"isAsciiLetter()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiLowerCase","insertText":"isAsciiLowerCase","insertTextFormat":1,"kind":2,"label":"isAsciiLowerCase","sortText":""},{"deprecated":false,"detail":"public func isAsciiLowerCase(): Bool","documentation":"","filterText":"isAsciiLowerCase","insertText":"isAsciiLowerCase()","insertTextFormat":1,"kind":2,"label":"isAsciiLowerCase()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiNumber","insertText":"isAsciiNumber","insertTextFormat":1,"kind":2,"label":"isAsciiNumber","sortText":""},{"deprecated":false,"detail":"public func isAsciiNumber(): Bool","documentation":"","filterText":"isAsciiNumber","insertText":"isAsciiNumber()","insertTextFormat":1,"kind":2,"label":"isAsciiNumber()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiNumberOrLetter","insertText":"isAsciiNumberOrLetter","insertTextFormat":1,"kind":2,"label":"isAsciiNumberOrLetter","sortText":""},{"deprecated":false,"detail":"public func isAsciiNumberOrLetter(): Bool","documentation":"","filterText":"isAsciiNumberOrLetter","insertText":"isAsciiNumberOrLetter()","insertTextFormat":1,"kind":2,"label":"isAsciiNumberOrLetter()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiOct","insertText":"isAsciiOct","insertTextFormat":1,"kind":2,"label":"isAsciiOct","sortText":""},{"deprecated":false,"detail":"public func isAsciiOct(): Bool","documentation":"","filterText":"isAsciiOct","insertText":"isAsciiOct()","insertTextFormat":1,"kind":2,"label":"isAsciiOct()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiPunctuation","insertText":"isAsciiPunctuation","insertTextFormat":1,"kind":2,"label":"isAsciiPunctuation","sortText":""},{"deprecated":false,"detail":"public func isAsciiPunctuation(): Bool","documentation":"","filterText":"isAsciiPunctuation","insertText":"isAsciiPunctuation()","insertTextFormat":1,"kind":2,"label":"isAsciiPunctuation()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiUpperCase","insertText":"isAsciiUpperCase","insertTextFormat":1,"kind":2,"label":"isAsciiUpperCase","sortText":""},{"deprecated":false,"detail":"public func isAsciiUpperCase(): Bool","documentation":"","filterText":"isAsciiUpperCase","insertText":"isAsciiUpperCase()","insertTextFormat":1,"kind":2,"label":"isAsciiUpperCase()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiWhiteSpace","insertText":"isAsciiWhiteSpace","insertTextFormat":1,"kind":2,"label":"isAsciiWhiteSpace","sortText":""},{"deprecated":false,"detail":"public func isAsciiWhiteSpace(): Bool","documentation":"","filterText":"isAsciiWhiteSpace","insertText":"isAsciiWhiteSpace()","insertTextFormat":1,"kind":2,"label":"isAsciiWhiteSpace()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isLetter","insertText":"isLetter()","insertTextFormat":1,"kind":2,"label":"isLetter()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isLowerCase","insertText":"isLowerCase()","insertTextFormat":1,"kind":2,"label":"isLowerCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isNumber","insertText":"isNumber()","insertTextFormat":1,"kind":2,"label":"isNumber()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isTitleCase","insertText":"isTitleCase()","insertTextFormat":1,"kind":2,"label":"isTitleCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isUpperCase","insertText":"isUpperCase()","insertTextFormat":1,"kind":2,"label":"isUpperCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isWhiteSpace","insertText":"isWhiteSpace()","insertTextFormat":1,"kind":2,"label":"isWhiteSpace()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Rune","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiLowerCase","insertText":"toAsciiLowerCase","insertTextFormat":1,"kind":2,"label":"toAsciiLowerCase","sortText":""},{"deprecated":false,"detail":"public func toAsciiLowerCase(): Rune","documentation":"","filterText":"toAsciiLowerCase","insertText":"toAsciiLowerCase()","insertTextFormat":1,"kind":2,"label":"toAsciiLowerCase()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiUpperCase","insertText":"toAsciiUpperCase","insertTextFormat":1,"kind":2,"label":"toAsciiUpperCase","sortText":""},{"deprecated":false,"detail":"public func toAsciiUpperCase(): Rune","documentation":"","filterText":"toAsciiUpperCase","insertText":"toAsciiUpperCase()","insertTextFormat":1,"kind":2,"label":"toAsciiUpperCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLowerCase","insertText":"toLowerCase()","insertTextFormat":1,"kind":2,"label":"toLowerCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLowerCase","insertText":"toLowerCase(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toLowerCase(opt: CasingOption)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitleCase","insertText":"toTitleCase()","insertTextFormat":1,"kind":2,"label":"toTitleCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitleCase","insertText":"toTitleCase(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toTitleCase(opt: CasingOption)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpperCase","insertText":"toUpperCase()","insertTextFormat":1,"kind":2,"label":"toUpperCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpperCase","insertText":"toUpperCase(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toUpperCase(opt: CasingOption)","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"","documentation":"","filterText":"compare","insertText":"compare","insertTextFormat":1,"kind":2,"label":"compare","sortText":""},{"deprecated":false,"detail":"public func compare(other: Rune): Ordering","documentation":"","filterText":"compare","insertText":"compare(${1:other: Rune})","insertTextFormat":2,"kind":2,"label":"compare(other: Rune)","sortText":""},{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I1\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo1","insertText":"foo1()","insertTextFormat":1,"kind":2,"label":"foo1()","sortText":""},{"additionalTextEdits":[{"newText":"import std.convert.Formattable\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.convert","documentation":"","filterText":"format","insertText":"format(${1:fmt: String})","insertTextFormat":2,"kind":2,"label":"format(fmt: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public open func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAscii","insertText":"isAscii","insertTextFormat":1,"kind":2,"label":"isAscii","sortText":""},{"deprecated":false,"detail":"public func isAscii(): Bool","documentation":"","filterText":"isAscii","insertText":"isAscii()","insertTextFormat":1,"kind":2,"label":"isAscii()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiControl","insertText":"isAsciiControl","insertTextFormat":1,"kind":2,"label":"isAsciiControl","sortText":""},{"deprecated":false,"detail":"public func isAsciiControl(): Bool","documentation":"","filterText":"isAsciiControl","insertText":"isAsciiControl()","insertTextFormat":1,"kind":2,"label":"isAsciiControl()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiGraphic","insertText":"isAsciiGraphic","insertTextFormat":1,"kind":2,"label":"isAsciiGraphic","sortText":""},{"deprecated":false,"detail":"public func isAsciiGraphic(): Bool","documentation":"","filterText":"isAsciiGraphic","insertText":"isAsciiGraphic()","insertTextFormat":1,"kind":2,"label":"isAsciiGraphic()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiHex","insertText":"isAsciiHex","insertTextFormat":1,"kind":2,"label":"isAsciiHex","sortText":""},{"deprecated":false,"detail":"public func isAsciiHex(): Bool","documentation":"","filterText":"isAsciiHex","insertText":"isAsciiHex()","insertTextFormat":1,"kind":2,"label":"isAsciiHex()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiLetter","insertText":"isAsciiLetter","insertTextFormat":1,"kind":2,"label":"isAsciiLetter","sortText":""},{"deprecated":false,"detail":"public func isAsciiLetter(): Bool","documentation":"","filterText":"isAsciiLetter","insertText":"isAsciiLetter()","insertTextFormat":1,"kind":2,"label":"isAsciiLetter()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiLowerCase","insertText":"isAsciiLowerCase","insertTextFormat":1,"kind":2,"label":"isAsciiLowerCase","sortText":""},{"deprecated":false,"detail":"public func isAsciiLowerCase(): Bool","documentation":"","filterText":"isAsciiLowerCase","insertText":"isAsciiLowerCase()","insertTextFormat":1,"kind":2,"label":"isAsciiLowerCase()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiNumber","insertText":"isAsciiNumber","insertTextFormat":1,"kind":2,"label":"isAsciiNumber","sortText":""},{"deprecated":false,"detail":"public func isAsciiNumber(): Bool","documentation":"","filterText":"isAsciiNumber","insertText":"isAsciiNumber()","insertTextFormat":1,"kind":2,"label":"isAsciiNumber()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiNumberOrLetter","insertText":"isAsciiNumberOrLetter","insertTextFormat":1,"kind":2,"label":"isAsciiNumberOrLetter","sortText":""},{"deprecated":false,"detail":"public func isAsciiNumberOrLetter(): Bool","documentation":"","filterText":"isAsciiNumberOrLetter","insertText":"isAsciiNumberOrLetter()","insertTextFormat":1,"kind":2,"label":"isAsciiNumberOrLetter()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiOct","insertText":"isAsciiOct","insertTextFormat":1,"kind":2,"label":"isAsciiOct","sortText":""},{"deprecated":false,"detail":"public func isAsciiOct(): Bool","documentation":"","filterText":"isAsciiOct","insertText":"isAsciiOct()","insertTextFormat":1,"kind":2,"label":"isAsciiOct()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiPunctuation","insertText":"isAsciiPunctuation","insertTextFormat":1,"kind":2,"label":"isAsciiPunctuation","sortText":""},{"deprecated":false,"detail":"public func isAsciiPunctuation(): Bool","documentation":"","filterText":"isAsciiPunctuation","insertText":"isAsciiPunctuation()","insertTextFormat":1,"kind":2,"label":"isAsciiPunctuation()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiUpperCase","insertText":"isAsciiUpperCase","insertTextFormat":1,"kind":2,"label":"isAsciiUpperCase","sortText":""},{"deprecated":false,"detail":"public func isAsciiUpperCase(): Bool","documentation":"","filterText":"isAsciiUpperCase","insertText":"isAsciiUpperCase()","insertTextFormat":1,"kind":2,"label":"isAsciiUpperCase()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"isAsciiWhiteSpace","insertText":"isAsciiWhiteSpace","insertTextFormat":1,"kind":2,"label":"isAsciiWhiteSpace","sortText":""},{"deprecated":false,"detail":"public func isAsciiWhiteSpace(): Bool","documentation":"","filterText":"isAsciiWhiteSpace","insertText":"isAsciiWhiteSpace()","insertTextFormat":1,"kind":2,"label":"isAsciiWhiteSpace()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isLetter","insertText":"isLetter()","insertTextFormat":1,"kind":2,"label":"isLetter()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isLowerCase","insertText":"isLowerCase()","insertTextFormat":1,"kind":2,"label":"isLowerCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isNumber","insertText":"isNumber()","insertTextFormat":1,"kind":2,"label":"isNumber()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isTitleCase","insertText":"isTitleCase()","insertTextFormat":1,"kind":2,"label":"isTitleCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isUpperCase","insertText":"isUpperCase()","insertTextFormat":1,"kind":2,"label":"isUpperCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"isWhiteSpace","insertText":"isWhiteSpace()","insertTextFormat":1,"kind":2,"label":"isWhiteSpace()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"next","insertText":"next","insertTextFormat":1,"kind":2,"label":"next","sortText":""},{"deprecated":false,"detail":"public func next(right: Int64): Rune","documentation":"","filterText":"next","insertText":"next(${1:right: Int64})","insertTextFormat":2,"kind":2,"label":"next(right: Int64)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"position","insertText":"position","insertTextFormat":1,"kind":2,"label":"position","sortText":""},{"deprecated":false,"detail":"public func position(): Int64","documentation":"","filterText":"position","insertText":"position()","insertTextFormat":1,"kind":2,"label":"position()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiLowerCase","insertText":"toAsciiLowerCase","insertTextFormat":1,"kind":2,"label":"toAsciiLowerCase","sortText":""},{"deprecated":false,"detail":"public func toAsciiLowerCase(): Rune","documentation":"","filterText":"toAsciiLowerCase","insertText":"toAsciiLowerCase()","insertTextFormat":1,"kind":2,"label":"toAsciiLowerCase()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toAsciiUpperCase","insertText":"toAsciiUpperCase","insertTextFormat":1,"kind":2,"label":"toAsciiUpperCase","sortText":""},{"deprecated":false,"detail":"public func toAsciiUpperCase(): Rune","documentation":"","filterText":"toAsciiUpperCase","insertText":"toAsciiUpperCase()","insertTextFormat":1,"kind":2,"label":"toAsciiUpperCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLowerCase","insertText":"toLowerCase()","insertTextFormat":1,"kind":2,"label":"toLowerCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toLowerCase","insertText":"toLowerCase(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toLowerCase(opt: CasingOption)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitleCase","insertText":"toTitleCase()","insertTextFormat":1,"kind":2,"label":"toTitleCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toTitleCase","insertText":"toTitleCase(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toTitleCase(opt: CasingOption)","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpperCase","insertText":"toUpperCase()","insertTextFormat":1,"kind":2,"label":"toUpperCase()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unicode.UnicodeRuneExtension\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unicode","documentation":"","filterText":"toUpperCase","insertText":"toUpperCase(${1:opt: CasingOption})","insertTextFormat":2,"kind":2,"label":"toUpperCase(opt: CasingOption)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I2\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo2","insertText":"foo2()","insertTextFormat":1,"kind":2,"label":"foo2()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I2\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo2","insertText":"foo2()","insertTextFormat":1,"kind":2,"label":"foo2()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public open func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":9,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I2\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo2","insertText":"foo2()","insertTextFormat":1,"kind":2,"label":"foo2()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} | 1 | +{"id":9,"jsonrpc":"2.0","result":[{"additionalTextEdits":[{"newText":"import primaryTyExtend.extends.I2\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import primaryTyExtend.extends","documentation":"","filterText":"foo2","insertText":"foo2()","insertTextFormat":1,"kind":2,"label":"foo2()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"hashCode","insertText":"hashCode","insertTextFormat":1,"kind":2,"label":"hashCode","sortText":""},{"deprecated":false,"detail":"public open func hashCode(): Int64","documentation":"","filterText":"hashCode","insertText":"hashCode()","insertTextFormat":1,"kind":2,"label":"hashCode()","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.prop_test.Shrink<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest.prop_test","documentation":"","filterText":"shrink","insertText":"shrink()","insertTextFormat":1,"kind":2,"label":"shrink()","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"toString","insertText":"toString","insertTextFormat":1,"kind":2,"label":"toString","sortText":""},{"deprecated":false,"detail":"public open func toString(): String","documentation":"","filterText":"toString","insertText":"toString()","insertTextFormat":1,"kind":2,"label":"toString()","sortText":""},{"additionalTextEdits":[{"newText":"import std.ast.ToTokens\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.ast","documentation":"","filterText":"toTokens","insertText":"toTokens()","insertTextFormat":1,"kind":2,"label":"toTokens()","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.BigEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeBigEndian","insertText":"writeBigEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeBigEndian(buffer: Array<Byte>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.binary.LittleEndianOrder<T>\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.binary","documentation":"","filterText":"writeLittleEndian","insertText":"writeLittleEndian(${1:buffer: Array<Byte>})","insertTextFormat":2,"kind":2,"label":"writeLittleEndian(buffer: Array<Byte>)","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":5,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public open class ArithmeticException <: Exception","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException","insertTextFormat":1,"kind":7,"label":"ArithmeticException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException()","insertTextFormat":1,"kind":3,"label":"ArithmeticException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"ArithmeticException(message: String)","sortText":""},{"deprecated":false,"detail":"public Type CPointer<T>","documentation":"","filterText":"CPointer","insertText":"CPointer<${1:T}>","insertTextFormat":2,"kind":7,"label":"CPointer<T>","sortText":""},{"deprecated":false,"detail":"public struct CPointerHandle<T>","documentation":"","filterText":"CPointerHandle","insertText":"CPointerHandle<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerHandle<T>","sortText":""},{"deprecated":true,"detail":"public func init()","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>()","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>()","sortText":""},{"deprecated":true,"detail":"public func init(ptr: CPointer<T>, arr: Array<T>)","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>(${3:ptr: CPointer<T>}, ${4:arr: Array<T>})","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>(ptr: CPointer<T>, arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"public struct CPointerResource<T>","documentation":"","filterText":"CPointerResource","insertText":"CPointerResource<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerResource<T>","sortText":""},{"deprecated":false,"detail":"public sealed open interface CType","documentation":"","filterText":"CType","insertText":"CType","insertTextFormat":1,"kind":8,"label":"CType","sortText":""},{"deprecated":false,"detail":"public interface Comparable<T> extends Equatable<T>, Less<T>, Greater<T>, LessOrEqual<T>, GreaterOrEqual<T>","documentation":"","filterText":"Comparable","insertText":"Comparable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Comparable<T>","sortText":""},{"deprecated":false,"detail":"public open class Exception <: ToString","documentation":"","filterText":"Exception","insertText":"Exception","insertTextFormat":1,"kind":7,"label":"Exception","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Exception","insertText":"Exception()","insertTextFormat":1,"kind":3,"label":"Exception()","sortText":""},{"deprecated":false,"detail":"public func init(causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String})","insertTextFormat":2,"kind":3,"label":"Exception(message: String)","sortText":""},{"deprecated":false,"detail":"public func init(message: String, causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String}, ${2:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(message: String, causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public open class IllegalArgumentException <: Exception","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException","insertTextFormat":1,"kind":7,"label":"IllegalArgumentException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException()","insertTextFormat":1,"kind":3,"label":"IllegalArgumentException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalArgumentException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class IllegalFormatException <: IllegalArgumentException","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException","insertTextFormat":1,"kind":7,"label":"IllegalFormatException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException()","insertTextFormat":1,"kind":3,"label":"IllegalFormatException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalFormatException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalStateException <: Exception","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException","insertTextFormat":1,"kind":7,"label":"IllegalStateException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException()","insertTextFormat":1,"kind":3,"label":"IllegalStateException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalStateException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public enum Option<T>","documentation":"","filterText":"Option","insertText":"Option<${1:T}>","insertTextFormat":2,"kind":13,"label":"Option<T>","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public class SpawnException <: Exception","documentation":"","filterText":"SpawnException","insertText":"SpawnException","insertTextFormat":1,"kind":7,"label":"SpawnException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"SpawnException","insertText":"SpawnException()","insertTextFormat":1,"kind":3,"label":"SpawnException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"SpawnException","insertText":"SpawnException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"SpawnException(message: String)","sortText":""},{"deprecated":false,"detail":"public class ThreadSnapshot <: ToString","documentation":"","filterText":"ThreadSnapshot","insertText":"ThreadSnapshot","insertTextFormat":1,"kind":7,"label":"ThreadSnapshot","sortText":""},{"deprecated":false,"detail":"public class TimeoutException <: Exception","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException","insertTextFormat":1,"kind":7,"label":"TimeoutException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException()","insertTextFormat":1,"kind":3,"label":"TimeoutException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"TimeoutException(message: String)","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprint","insertText":"eprint","insertTextFormat":1,"kind":2,"label":"eprint","sortText":""},{"deprecated":false,"detail":"public func eprint(str: String, flush!: Bool = true): Unit","documentation":"","filterText":"eprint","insertText":"eprint(${1:str: String}, flush: ${2:Bool = true})","insertTextFormat":2,"kind":2,"label":"eprint(str: String, flush!: Bool = true)","sortText":""},{"deprecated":false,"detail":"public func eprint<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"eprint","insertText":"eprint<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"eprint<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprintln","insertText":"eprintln","insertTextFormat":1,"kind":2,"label":"eprintln","sortText":""},{"deprecated":false,"detail":"public func eprintln(str: String): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln(${1:str: String})","insertTextFormat":2,"kind":2,"label":"eprintln(str: String)","sortText":""},{"deprecated":false,"detail":"public func eprintln<T>(arg: T): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"eprintln<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope","insertTextFormat":1,"kind":2,"label":"exclusiveScope","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}> { => ${3:T} }","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T> { => T }","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}>(${3:fn: () -> T})","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T>(fn: () -> T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"print","insertText":"print","insertTextFormat":1,"kind":2,"label":"print","sortText":""},{"deprecated":false,"detail":"public func print(b: Bool, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:b: Bool}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(b: Bool, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(c: Rune, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:c: Rune}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(c: Rune, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(str: String, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:str: String}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(str: String, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"print<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"println","insertText":"println","insertTextFormat":1,"kind":2,"label":"println","sortText":""},{"deprecated":false,"detail":"public func println(): Unit","documentation":"","filterText":"println","insertText":"println()","insertTextFormat":1,"kind":2,"label":"println()","sortText":""},{"deprecated":false,"detail":"public func println(b: Bool): Unit","documentation":"","filterText":"println","insertText":"println(${1:b: Bool})","insertTextFormat":2,"kind":2,"label":"println(b: Bool)","sortText":""},{"deprecated":false,"detail":"public func println(c: Rune): Unit","documentation":"","filterText":"println","insertText":"println(${1:c: Rune})","insertTextFormat":2,"kind":2,"label":"println(c: Rune)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float16): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float16})","insertTextFormat":2,"kind":2,"label":"println(f: Float16)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float32): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float32})","insertTextFormat":2,"kind":2,"label":"println(f: Float32)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float64): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float64})","insertTextFormat":2,"kind":2,"label":"println(f: Float64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int16})","insertTextFormat":2,"kind":2,"label":"println(i: Int16)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int32})","insertTextFormat":2,"kind":2,"label":"println(i: Int32)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int64})","insertTextFormat":2,"kind":2,"label":"println(i: Int64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int8})","insertTextFormat":2,"kind":2,"label":"println(i: Int8)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt16})","insertTextFormat":2,"kind":2,"label":"println(i: UInt16)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt32})","insertTextFormat":2,"kind":2,"label":"println(i: UInt32)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt64})","insertTextFormat":2,"kind":2,"label":"println(i: UInt64)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt8})","insertTextFormat":2,"kind":2,"label":"println(i: UInt8)","sortText":""},{"deprecated":false,"detail":"public func println(str: String): Unit","documentation":"","filterText":"println","insertText":"println(${1:str: String})","insertTextFormat":2,"kind":2,"label":"println(str: String)","sortText":""},{"deprecated":false,"detail":"public func println<T>(arg: T): Unit","documentation":"","filterText":"println","insertText":"println<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"println<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sleep","insertText":"sleep","insertTextFormat":1,"kind":2,"label":"sleep","sortText":""},{"deprecated":false,"detail":"public func sleep(dur: Duration): Unit","documentation":"","filterText":"sleep","insertText":"sleep(${1:dur: Duration})","insertTextFormat":2,"kind":2,"label":"sleep(dur: Duration)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"package","insertText":"package","insertTextFormat":1,"kind":14,"label":"package","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"import","insertText":"import","insertTextFormat":1,"kind":14,"label":"import","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"type","insertText":"type","insertTextFormat":1,"kind":14,"label":"type","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"super","insertText":"super","insertTextFormat":1,"kind":14,"label":"super","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"prop","insertText":"prop","insertTextFormat":1,"kind":14,"label":"prop","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"public","insertText":"public","insertTextFormat":1,"kind":14,"label":"public","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"private","insertText":"private","insertTextFormat":1,"kind":14,"label":"private","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"protected","insertText":"protected","insertTextFormat":1,"kind":14,"label":"protected","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"open","insertText":"open","insertTextFormat":1,"kind":14,"label":"open","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"operator","insertText":"operator","insertTextFormat":1,"kind":14,"label":"operator","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"spawn","insertText":"spawn","insertTextFormat":1,"kind":14,"label":"spawn","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"specific","insertText":"specific","insertTextFormat":1,"kind":14,"label":"specific","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"except","insertText":"except","insertTextFormat":1,"kind":14,"label":"except","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"primal","insertText":"primal","insertTextFormat":1,"kind":14,"label":"primal","sortText":""},{"deprecated":false,"detail":"type newName = originalName","documentation":"","filterText":"type","insertText":"type ${1:newName} = ${0:originalName}","insertTextFormat":2,"kind":14,"label":"type newName = originalName","sortText":""},{"deprecated":false,"detail":"import pkgName.* as newName.*","documentation":"","filterText":"import","insertText":"import ${1:pkgName.*} as ${0:newName.*}","insertTextFormat":2,"kind":14,"label":"import pkgName.* as newName.*","sortText":""},{"deprecated":false,"detail":"spawn {}","documentation":"","filterText":"spawn","insertText":"spawn {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn {}","sortText":""},{"deprecated":false,"detail":"spawn(threadContext) {}","documentation":"","filterText":"spawn","insertText":"spawn(${1:threadContext}) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn(threadContext) {}","sortText":""},{"deprecated":false,"detail":"Deprecated","documentation":"","filterText":"Deprecated","insertText":"Deprecated","insertTextFormat":1,"kind":14,"label":"Deprecated","sortText":""},{"deprecated":false,"detail":"prop name: T {get(){val}}","documentation":"","filterText":"prop","insertText":"prop ${0:name}: ${1:T} {\n\tget() {\n\t\t${3:val}\n\t}\n}","insertTextFormat":2,"kind":14,"label":"prop name: T {get(){val}}","sortText":""},{"deprecated":false,"detail":"prop name: T {get(){val} set(v){}}","documentation":"","filterText":"prop","insertText":"prop ${0:name}: ${1:T} {\n\tget() {\n\t\t${3:val}\n\t}\n\tset(v) {\n\t}\n}","insertTextFormat":2,"kind":14,"label":"prop name: T {get(){val} set(v){}}","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataProvider\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataProvider","insertText":"DataProvider<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataProvider<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.setOptionInfo\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"setOptionInfo","insertText":"setOptionInfo(${1:name: String}, ${2:types: Array<String>}, description: ${3:Option<String>})","insertTextFormat":2,"kind":2,"label":"setOptionInfo(name: String, types: Array<String>, description!: Option<String>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""}]} | 1 | +{"id":5,"jsonrpc":"2.0","result":[{"deprecated":false,"detail":"public open class ArithmeticException <: Exception","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException","insertTextFormat":1,"kind":7,"label":"ArithmeticException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException()","insertTextFormat":1,"kind":3,"label":"ArithmeticException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"ArithmeticException","insertText":"ArithmeticException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"ArithmeticException(message: String)","sortText":""},{"deprecated":false,"detail":"public Type CPointer<T>","documentation":"","filterText":"CPointer","insertText":"CPointer<${1:T}>","insertTextFormat":2,"kind":7,"label":"CPointer<T>","sortText":""},{"deprecated":false,"detail":"public struct CPointerHandle<T>","documentation":"","filterText":"CPointerHandle","insertText":"CPointerHandle<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerHandle<T>","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>()","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>()","sortText":""},{"deprecated":false,"detail":"public func init(ptr: CPointer<T>, arr: Array<T>)","documentation":"","filterText":"CPointerHandle<T>","insertText":"CPointerHandle<${1:T}>(${3:ptr: CPointer<T>}, ${4:arr: Array<T>})","insertTextFormat":2,"kind":3,"label":"CPointerHandle<T>(ptr: CPointer<T>, arr: Array<T>)","sortText":""},{"deprecated":false,"detail":"public struct CPointerResource<T>","documentation":"","filterText":"CPointerResource","insertText":"CPointerResource<${1:T}>","insertTextFormat":2,"kind":22,"label":"CPointerResource<T>","sortText":""},{"deprecated":false,"detail":"public sealed open interface CType","documentation":"","filterText":"CType","insertText":"CType","insertTextFormat":1,"kind":8,"label":"CType","sortText":""},{"deprecated":false,"detail":"public interface Comparable<T> extends Equatable<T>, Less<T>, Greater<T>, LessOrEqual<T>, GreaterOrEqual<T>","documentation":"","filterText":"Comparable","insertText":"Comparable<${1:T}>","insertTextFormat":2,"kind":8,"label":"Comparable<T>","sortText":""},{"deprecated":false,"detail":"public sealed open interface Copyable","documentation":"","filterText":"Copyable","insertText":"Copyable","insertTextFormat":1,"kind":8,"label":"Copyable","sortText":""},{"deprecated":false,"detail":"public open class Exception <: ToString","documentation":"","filterText":"Exception","insertText":"Exception","insertTextFormat":1,"kind":7,"label":"Exception","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"Exception","insertText":"Exception()","insertTextFormat":1,"kind":3,"label":"Exception()","sortText":""},{"deprecated":false,"detail":"public func init(causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String})","insertTextFormat":2,"kind":3,"label":"Exception(message: String)","sortText":""},{"deprecated":false,"detail":"public func init(message: String, causedBy: Exception)","documentation":"","filterText":"Exception","insertText":"Exception(${1:message: String}, ${2:causedBy: Exception})","insertTextFormat":2,"kind":3,"label":"Exception(message: String, causedBy: Exception)","sortText":""},{"deprecated":false,"detail":"public class ExclusiveScopeException <: Exception","documentation":"","filterText":"ExclusiveScopeException","insertText":"ExclusiveScopeException","insertTextFormat":1,"kind":7,"label":"ExclusiveScopeException","sortText":""},{"deprecated":false,"detail":"public open class IllegalArgumentException <: Exception","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException","insertTextFormat":1,"kind":7,"label":"IllegalArgumentException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException()","insertTextFormat":1,"kind":3,"label":"IllegalArgumentException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalArgumentException","insertText":"IllegalArgumentException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalArgumentException(message: String)","sortText":""},{"deprecated":false,"detail":"public open class IllegalFormatException <: IllegalArgumentException","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException","insertTextFormat":1,"kind":7,"label":"IllegalFormatException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException()","insertTextFormat":1,"kind":3,"label":"IllegalFormatException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalFormatException","insertText":"IllegalFormatException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalFormatException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalMemoryException <: Exception","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException","insertTextFormat":1,"kind":7,"label":"IllegalMemoryException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException()","insertTextFormat":1,"kind":3,"label":"IllegalMemoryException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalMemoryException","insertText":"IllegalMemoryException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalMemoryException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IllegalStateException <: Exception","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException","insertTextFormat":1,"kind":7,"label":"IllegalStateException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException()","insertTextFormat":1,"kind":3,"label":"IllegalStateException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IllegalStateException","insertText":"IllegalStateException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IllegalStateException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IncompatiblePackageException <: Exception","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException","insertTextFormat":1,"kind":7,"label":"IncompatiblePackageException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException()","insertTextFormat":1,"kind":3,"label":"IncompatiblePackageException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IncompatiblePackageException","insertText":"IncompatiblePackageException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IncompatiblePackageException(message: String)","sortText":""},{"deprecated":false,"detail":"public class IndexOutOfBoundsException <: Exception","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException","insertTextFormat":1,"kind":7,"label":"IndexOutOfBoundsException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException()","insertTextFormat":1,"kind":3,"label":"IndexOutOfBoundsException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"IndexOutOfBoundsException","insertText":"IndexOutOfBoundsException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"IndexOutOfBoundsException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NegativeArraySizeException <: Exception","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException","insertTextFormat":1,"kind":7,"label":"NegativeArraySizeException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException()","insertTextFormat":1,"kind":3,"label":"NegativeArraySizeException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NegativeArraySizeException","insertText":"NegativeArraySizeException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NegativeArraySizeException(message: String)","sortText":""},{"deprecated":false,"detail":"public class NoneValueException <: Exception","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException","insertTextFormat":1,"kind":7,"label":"NoneValueException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException()","insertTextFormat":1,"kind":3,"label":"NoneValueException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"NoneValueException","insertText":"NoneValueException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"NoneValueException(message: String)","sortText":""},{"deprecated":false,"detail":"public enum Option<T>","documentation":"","filterText":"Option","insertText":"Option<${1:T}>","insertTextFormat":2,"kind":13,"label":"Option<T>","sortText":""},{"deprecated":false,"detail":"public class OverflowException <: ArithmeticException","documentation":"","filterText":"OverflowException","insertText":"OverflowException","insertTextFormat":1,"kind":7,"label":"OverflowException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"OverflowException","insertText":"OverflowException()","insertTextFormat":1,"kind":3,"label":"OverflowException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"OverflowException","insertText":"OverflowException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"OverflowException(message: String)","sortText":""},{"deprecated":false,"detail":"public class SpawnException <: Exception","documentation":"","filterText":"SpawnException","insertText":"SpawnException","insertTextFormat":1,"kind":7,"label":"SpawnException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"SpawnException","insertText":"SpawnException()","insertTextFormat":1,"kind":3,"label":"SpawnException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"SpawnException","insertText":"SpawnException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"SpawnException(message: String)","sortText":""},{"deprecated":false,"detail":"public class ThreadSnapshot <: ToString","documentation":"","filterText":"ThreadSnapshot","insertText":"ThreadSnapshot","insertTextFormat":1,"kind":7,"label":"ThreadSnapshot","sortText":""},{"deprecated":false,"detail":"public class TimeoutException <: Exception","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException","insertTextFormat":1,"kind":7,"label":"TimeoutException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException()","insertTextFormat":1,"kind":3,"label":"TimeoutException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"TimeoutException","insertText":"TimeoutException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"TimeoutException(message: String)","sortText":""},{"deprecated":false,"detail":"public class UnsupportedException <: Exception","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException","insertTextFormat":1,"kind":7,"label":"UnsupportedException","sortText":""},{"deprecated":false,"detail":"public func init()","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException()","insertTextFormat":1,"kind":3,"label":"UnsupportedException()","sortText":""},{"deprecated":false,"detail":"public func init(message: String)","documentation":"","filterText":"UnsupportedException","insertText":"UnsupportedException(${1:message: String})","insertTextFormat":2,"kind":3,"label":"UnsupportedException(message: String)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprint","insertText":"eprint","insertTextFormat":1,"kind":2,"label":"eprint","sortText":""},{"deprecated":false,"detail":"public func eprint(str: String, flush!: Bool = true): Unit","documentation":"","filterText":"eprint","insertText":"eprint(${1:str: String}, flush: ${2:Bool = true})","insertTextFormat":2,"kind":2,"label":"eprint(str: String, flush!: Bool = true)","sortText":""},{"deprecated":false,"detail":"public func eprint<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"eprint","insertText":"eprint<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"eprint<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"eprintln","insertText":"eprintln","insertTextFormat":1,"kind":2,"label":"eprintln","sortText":""},{"deprecated":false,"detail":"public func eprintln(str: String): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln(${1:str: String})","insertTextFormat":2,"kind":2,"label":"eprintln(str: String)","sortText":""},{"deprecated":false,"detail":"public func eprintln<T>(arg: T): Unit","documentation":"","filterText":"eprintln","insertText":"eprintln<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"eprintln<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope","insertTextFormat":1,"kind":2,"label":"exclusiveScope","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}> { => ${3:T} }","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T> { => T }","sortText":""},{"deprecated":false,"detail":"public func exclusiveScope<T>(fn: () -> T): T","documentation":"","filterText":"exclusiveScope","insertText":"exclusiveScope<${1:T}>(${3:fn: () -> T})","insertTextFormat":2,"kind":2,"label":"exclusiveScope<T>(fn: () -> T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"print","insertText":"print","insertTextFormat":1,"kind":2,"label":"print","sortText":""},{"deprecated":false,"detail":"public func print(b: Bool, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:b: Bool}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(b: Bool, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(c: Rune, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:c: Rune}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(c: Rune, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(f: Float64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:f: Float64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(f: Float64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: Int8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: Int8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: Int8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt16, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt16}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt16, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt32, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt32}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt32, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt64, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt64}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt64, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(i: UInt8, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:i: UInt8}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(i: UInt8, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print(str: String, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print(${1:str: String}, flush: ${2:Bool = false})","insertTextFormat":2,"kind":2,"label":"print(str: String, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"public func print<T>(arg: T, flush!: Bool = false): Unit","documentation":"","filterText":"print","insertText":"print<${1:T}>(${3:arg: T}, flush: ${4:Bool = false})","insertTextFormat":2,"kind":2,"label":"print<T>(arg: T, flush!: Bool = false)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"println","insertText":"println","insertTextFormat":1,"kind":2,"label":"println","sortText":""},{"deprecated":false,"detail":"public func println(): Unit","documentation":"","filterText":"println","insertText":"println()","insertTextFormat":1,"kind":2,"label":"println()","sortText":""},{"deprecated":false,"detail":"public func println(b: Bool): Unit","documentation":"","filterText":"println","insertText":"println(${1:b: Bool})","insertTextFormat":2,"kind":2,"label":"println(b: Bool)","sortText":""},{"deprecated":false,"detail":"public func println(c: Rune): Unit","documentation":"","filterText":"println","insertText":"println(${1:c: Rune})","insertTextFormat":2,"kind":2,"label":"println(c: Rune)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float16): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float16})","insertTextFormat":2,"kind":2,"label":"println(f: Float16)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float32): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float32})","insertTextFormat":2,"kind":2,"label":"println(f: Float32)","sortText":""},{"deprecated":false,"detail":"public func println(f: Float64): Unit","documentation":"","filterText":"println","insertText":"println(${1:f: Float64})","insertTextFormat":2,"kind":2,"label":"println(f: Float64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int16})","insertTextFormat":2,"kind":2,"label":"println(i: Int16)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int32})","insertTextFormat":2,"kind":2,"label":"println(i: Int32)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int64})","insertTextFormat":2,"kind":2,"label":"println(i: Int64)","sortText":""},{"deprecated":false,"detail":"public func println(i: Int8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: Int8})","insertTextFormat":2,"kind":2,"label":"println(i: Int8)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt16): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt16})","insertTextFormat":2,"kind":2,"label":"println(i: UInt16)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt32): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt32})","insertTextFormat":2,"kind":2,"label":"println(i: UInt32)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt64): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt64})","insertTextFormat":2,"kind":2,"label":"println(i: UInt64)","sortText":""},{"deprecated":false,"detail":"public func println(i: UInt8): Unit","documentation":"","filterText":"println","insertText":"println(${1:i: UInt8})","insertTextFormat":2,"kind":2,"label":"println(i: UInt8)","sortText":""},{"deprecated":false,"detail":"public func println(str: String): Unit","documentation":"","filterText":"println","insertText":"println(${1:str: String})","insertTextFormat":2,"kind":2,"label":"println(str: String)","sortText":""},{"deprecated":false,"detail":"public func println<T>(arg: T): Unit","documentation":"","filterText":"println","insertText":"println<${1:T}>(${3:arg: T})","insertTextFormat":2,"kind":2,"label":"println<T>(arg: T)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"sleep","insertText":"sleep","insertTextFormat":1,"kind":2,"label":"sleep","sortText":""},{"deprecated":false,"detail":"public func sleep(dur: Duration): Unit","documentation":"","filterText":"sleep","insertText":"sleep(${1:dur: Duration})","insertTextFormat":2,"kind":2,"label":"sleep(dur: Duration)","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"package","insertText":"package","insertTextFormat":1,"kind":14,"label":"package","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"import","insertText":"import","insertTextFormat":1,"kind":14,"label":"import","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"type","insertText":"type","insertTextFormat":1,"kind":14,"label":"type","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"super","insertText":"super","insertTextFormat":1,"kind":14,"label":"super","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"prop","insertText":"prop","insertTextFormat":1,"kind":14,"label":"prop","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"public","insertText":"public","insertTextFormat":1,"kind":14,"label":"public","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"private","insertText":"private","insertTextFormat":1,"kind":14,"label":"private","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"protected","insertText":"protected","insertTextFormat":1,"kind":14,"label":"protected","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"open","insertText":"open","insertTextFormat":1,"kind":14,"label":"open","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"operator","insertText":"operator","insertTextFormat":1,"kind":14,"label":"operator","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"spawn","insertText":"spawn","insertTextFormat":1,"kind":14,"label":"spawn","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"specific","insertText":"specific","insertTextFormat":1,"kind":14,"label":"specific","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"except","insertText":"except","insertTextFormat":1,"kind":14,"label":"except","sortText":""},{"deprecated":false,"detail":"","documentation":"","filterText":"primal","insertText":"primal","insertTextFormat":1,"kind":14,"label":"primal","sortText":""},{"deprecated":false,"detail":"type newName = originalName","documentation":"","filterText":"type","insertText":"type ${1:newName} = ${0:originalName}","insertTextFormat":2,"kind":14,"label":"type newName = originalName","sortText":""},{"deprecated":false,"detail":"import pkgName.* as newName.*","documentation":"","filterText":"import","insertText":"import ${1:pkgName.*} as ${0:newName.*}","insertTextFormat":2,"kind":14,"label":"import pkgName.* as newName.*","sortText":""},{"deprecated":false,"detail":"spawn {}","documentation":"","filterText":"spawn","insertText":"spawn {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn {}","sortText":""},{"deprecated":false,"detail":"spawn(threadContext) {}","documentation":"","filterText":"spawn","insertText":"spawn(${1:threadContext}) {\n\t$0\n}","insertTextFormat":2,"kind":14,"label":"spawn(threadContext) {}","sortText":""},{"deprecated":false,"detail":"Deprecated","documentation":"","filterText":"Deprecated","insertText":"Deprecated","insertTextFormat":1,"kind":14,"label":"Deprecated","sortText":""},{"deprecated":false,"detail":"prop name: T {get(){val}}","documentation":"","filterText":"prop","insertText":"prop ${0:name}: ${1:T} {\n\tget() {\n\t\t${3:val}\n\t}\n}","insertTextFormat":2,"kind":14,"label":"prop name: T {get(){val}}","sortText":""},{"deprecated":false,"detail":"prop name: T {get(){val} set(v){}}","documentation":"","filterText":"prop","insertText":"prop ${0:name}: ${1:T} {\n\tget() {\n\t\t${3:val}\n\t}\n\tset(v) {\n\t}\n}","insertTextFormat":2,"kind":14,"label":"prop name: T {get(){val} set(v){}}","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.DataProvider\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"DataProvider","insertText":"DataProvider<${1:T}>","insertTextFormat":2,"kind":8,"label":"DataProvider<T>","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}, ${2:validator: (Any) -> OptionValidity})","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String, validator: (Any) -> OptionValidity)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.registerOptionValidator\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"registerOptionValidator","insertText":"registerOptionValidator(${1:name: String}) { arg1: Any => ${2:OptionValidity} }","insertTextFormat":2,"kind":2,"label":"registerOptionValidator(name: String) { Any => OptionValidity }","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.setOptionInfo\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"setOptionInfo","insertText":"setOptionInfo(${1:name: String}, ${2:types: Array<String>}, description: ${3:Option<String>})","insertTextFormat":2,"kind":2,"label":"setOptionInfo(name: String, types: Array<String>, description!: Option<String>)","sortText":""},{"additionalTextEdits":[{"newText":"import std.unittest.OptionValidity\n","range":{"end":{"character":0,"line":7},"start":{"character":0,"line":7}}}],"deprecated":false,"detail":"import std.unittest","documentation":"","filterText":"OptionValidity","insertText":"OptionValidity","insertTextFormat":1,"kind":13,"label":"OptionValidity","sortText":""}]} |
| @@ -1 +1 @@ | |||
| 1 | -{"jsonrpc": "2.0", "method": "textDocument/publishDiagnostics", "params": {"diagnostics": [{"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 23, "line": 7}, "start": {"character": 4, "line": 7}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'list1'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 23, "line": 7}, "start": {"character": 4, "line": 7}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'list1'"}]}, "message": "Variable 'list1' is declared but never used", "range": {"end": {"character": 13, "line": 7}, "start": {"character": 8, "line": 7}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 35, "line": 8}, "start": {"character": 4, "line": 8}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'list'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 35, "line": 8}, "start": {"character": 4, "line": 8}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'list'"}]}, "message": "Variable 'list' is declared but never used", "range": {"end": {"character": 12, "line": 8}, "start": {"character": 8, "line": 8}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"category": 574, "code": 574, "message": "expected expression after ',', found '*'", "range": {"end": {"character": 23, "line": 8}, "start": {"character": 22, "line": 8}}, "severity": 1, "source": "Cangjie"}, {"category": 771, "code": 771, "message": "cannot assign to immutable value", "range": {"end": {"character": 10, "line": 10}, "start": {"character": 4, "line": 10}}, "relatedInformation": [{"location": {"range": {"end": {"character": 10, "line": 9}, "start": {"character": 9, "line": 9}}, "uri": "file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj"}, "message": "variable 'a' is immutable"}], "severity": 1, "source": "Cangjie"}, {"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 24, "line": 12}, "start": {"character": 4, "line": 12}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'e'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 24, "line": 12}, "start": {"character": 4, "line": 12}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'e'"}]}, "message": "Variable 'e' is declared but never used", "range": {"end": {"character": 9, "line": 12}, "start": {"character": 8, "line": 12}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"category": 760, "code": 760, "message": "the number '1233211' exceeds the value range of type 'Int8'", "range": {"end": {"character": 24, "line": 12}, "start": {"character": 17, "line": 12}}, "severity": 1, "source": "Cangjie"}, {"category": 571, "code": 571, "message": "comparison operators cannot be chained", "range": {"end": {"character": 8, "line": 13}, "start": {"character": 7, "line": 13}}, "severity": 1, "source": "Cangjie"}, {"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 19, "line": 15}, "start": {"character": 4, "line": 15}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'y1'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 19, "line": 15}, "start": {"character": 4, "line": 15}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'y1'"}]}, "message": "Variable 'y1' is declared but never used", "range": {"end": {"character": 10, "line": 15}, "start": {"character": 8, "line": 15}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 20, "line": 16}, "start": {"character": 4, "line": 16}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'r1'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 20, "line": 16}, "start": {"character": 4, "line": 16}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'r1'"}]}, "message": "Variable 'r1' is declared but never used", "range": {"end": {"character": 10, "line": 16}, "start": {"character": 8, "line": 16}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"category": 574, "code": 574, "message": "expected expression after '^', found '^'", "range": {"end": {"character": 11, "line": 17}, "start": {"character": 10, "line": 17}}, "severity": 1, "source": "Cangjie"}, {"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 15, "line": 18}, "start": {"character": 4, "line": 18}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'c'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 15, "line": 18}, "start": {"character": 4, "line": 18}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'c'"}]}, "message": "Variable 'c' is declared but never used", "range": {"end": {"character": 9, "line": 18}, "start": {"character": 8, "line": 18}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"category": 515, "code": 515, "message": "expected '.', '(', '[', '{' or '?' after '?'", "range": {"end": {"character": 14, "line": 18}, "start": {"character": 13, "line": 18}}, "severity": 1, "source": "Cangjie"}, {"category": 766, "code": 766, "message": "invalid binary operator '?' on type 'Bool' and 'Int32'", "range": {"end": {"character": 14, "line": 18}, "start": {"character": 13, "line": 18}}, "severity": 1, "source": "Cangjie"}, {"category": 577, "code": 577, "message": "expected operator or end of expression, found ':'", "range": {"end": {"character": 16, "line": 18}, "start": {"character": 15, "line": 18}}, "severity": 1, "source": "Cangjie"}, {"code": 0, "codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 25, "line": 19}, "start": {"character": 4, "line": 19}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'd'"}], "data": {"codeActions": [{"edit": {"changes": {"file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj": [{"newText": "", "range": {"end": {"character": 25, "line": 19}, "start": {"character": 4, "line": 19}}}]}}, "kind": "quickfix.removeUnusedSymbol", "title": "Remove unused variable 'd'"}]}, "message": "Variable 'd' is declared but never used", "range": {"end": {"character": 9, "line": 19}, "start": {"character": 8, "line": 19}}, "severity": 4, "source": "Cangjie", "tags": [1]}, {"category": 515, "code": 515, "message": "expected '.', '(', '[', '{' or '?' after '?'", "range": {"end": {"character": 24, "line": 19}, "start": {"character": 23, "line": 19}}, "severity": 1, "source": "Cangjie"}, {"category": 766, "code": 766, "message": "invalid binary operator '?' on type 'Bool' and 'Int32'", "range": {"end": {"character": 24, "line": 19}, "start": {"character": 23, "line": 19}}, "severity": 1, "source": "Cangjie"}, {"category": 577, "code": 577, "message": "expected operator or end of expression, found ':'", "range": {"end": {"character": 26, "line": 19}, "start": {"character": 25, "line": 19}}, "severity": 1, "source": "Cangjie"}, {"category": 771, "code": 771, "message": "cannot assign to immutable value", "range": {"end": {"character": 11, "line": 20}, "start": {"character": 7, "line": 20}}, "relatedInformation": [{"location": {"range": {"end": {"character": 10, "line": 9}, "start": {"character": 9, "line": 9}}, "uri": "file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj"}, "message": "variable 'a' is immutable"}], "severity": 1, "source": "Cangjie"}, {"category": 726, "code": 726, "message": "mismatched types expected 'Bool', found 'Unit', the type of an assignment expression is always 'Unit'", "range": {"end": {"character": 11, "line": 20}, "start": {"character": 7, "line": 20}}, "severity": 1, "source": "Cangjie"}], "uri": "file://***//cangjie_tools/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj"}} | 1 | +{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":23,"line":7},"start":{"character":4,"line":7}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'list1'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":23,"line":7},"start":{"character":4,"line":7}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'list1'"}]},"message":"Variable 'list1' is declared but never used","range":{"end":{"character":13,"line":7},"start":{"character":8,"line":7}},"severity":4,"source":"Cangjie","tags":[1]},{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":35,"line":8},"start":{"character":4,"line":8}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'list'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":35,"line":8},"start":{"character":4,"line":8}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'list'"}]},"message":"Variable 'list' is declared but never used","range":{"end":{"character":12,"line":8},"start":{"character":8,"line":8}},"severity":4,"source":"Cangjie","tags":[1]},{"category":572,"code":572,"message":"expected expression after ',', found '*'","range":{"end":{"character":23,"line":8},"start":{"character":22,"line":8}},"severity":1,"source":"Cangjie"},{"category":484,"code":484,"message":"unclosed delimiter: '['","range":{"end":{"character":23,"line":8},"start":{"character":22,"line":8}},"severity":1,"source":"Cangjie"},{"category":772,"code":772,"message":"cannot assign to immutable value","range":{"end":{"character":10,"line":10},"start":{"character":4,"line":10}},"relatedInformation":[{"location":{"range":{"end":{"character":10,"line":9},"start":{"character":9,"line":9}},"uri":"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj"},"message":"variable 'a' is immutable"}],"severity":1,"source":"Cangjie"},{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":24,"line":12},"start":{"character":4,"line":12}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'e'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":24,"line":12},"start":{"character":4,"line":12}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'e'"}]},"message":"Variable 'e' is declared but never used","range":{"end":{"character":9,"line":12},"start":{"character":8,"line":12}},"severity":4,"source":"Cangjie","tags":[1]},{"category":761,"code":761,"message":"the number '1233211' exceeds the value range of type 'Int8'","range":{"end":{"character":24,"line":12},"start":{"character":17,"line":12}},"severity":1,"source":"Cangjie"},{"category":569,"code":569,"message":"comparison operators cannot be chained","range":{"end":{"character":8,"line":13},"start":{"character":7,"line":13}},"severity":1,"source":"Cangjie"},{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":19,"line":15},"start":{"character":4,"line":15}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'y1'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":19,"line":15},"start":{"character":4,"line":15}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'y1'"}]},"message":"Variable 'y1' is declared but never used","range":{"end":{"character":10,"line":15},"start":{"character":8,"line":15}},"severity":4,"source":"Cangjie","tags":[1]},{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":20,"line":16},"start":{"character":4,"line":16}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'r1'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":20,"line":16},"start":{"character":4,"line":16}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'r1'"}]},"message":"Variable 'r1' is declared but never used","range":{"end":{"character":10,"line":16},"start":{"character":8,"line":16}},"severity":4,"source":"Cangjie","tags":[1]},{"category":572,"code":572,"message":"expected expression after '^', found '^'","range":{"end":{"character":11,"line":17},"start":{"character":10,"line":17}},"severity":1,"source":"Cangjie"},{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":15,"line":18},"start":{"character":4,"line":18}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'c'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":15,"line":18},"start":{"character":4,"line":18}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'c'"}]},"message":"Variable 'c' is declared but never used","range":{"end":{"character":9,"line":18},"start":{"character":8,"line":18}},"severity":4,"source":"Cangjie","tags":[1]},{"category":513,"code":513,"message":"expected '.', '(', '[', '{' or '?' after '?'","range":{"end":{"character":14,"line":18},"start":{"character":13,"line":18}},"severity":1,"source":"Cangjie"},{"category":767,"code":767,"message":"invalid binary operator '?' on type 'Bool' and 'Int32'","range":{"end":{"character":14,"line":18},"start":{"character":13,"line":18}},"severity":1,"source":"Cangjie"},{"category":575,"code":575,"message":"expected operator or end of expression, found ':'","range":{"end":{"character":16,"line":18},"start":{"character":15,"line":18}},"severity":1,"source":"Cangjie"},{"code":0,"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":25,"line":19},"start":{"character":4,"line":19}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'd'"}],"data":{"codeActions":[{"edit":{"changes":{"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj":[{"newText":"","range":{"end":{"character":25,"line":19},"start":{"character":4,"line":19}}}]}},"kind":"quickfix.removeUnusedSymbol","title":"Remove unused variable 'd'"}]},"message":"Variable 'd' is declared but never used","range":{"end":{"character":9,"line":19},"start":{"character":8,"line":19}},"severity":4,"source":"Cangjie","tags":[1]},{"category":513,"code":513,"message":"expected '.', '(', '[', '{' or '?' after '?'","range":{"end":{"character":24,"line":19},"start":{"character":23,"line":19}},"severity":1,"source":"Cangjie"},{"category":767,"code":767,"message":"invalid binary operator '?' on type 'Bool' and 'Int32'","range":{"end":{"character":24,"line":19},"start":{"character":23,"line":19}},"severity":1,"source":"Cangjie"},{"category":575,"code":575,"message":"expected operator or end of expression, found ':'","range":{"end":{"character":26,"line":19},"start":{"character":25,"line":19}},"severity":1,"source":"Cangjie"},{"category":772,"code":772,"message":"cannot assign to immutable value","range":{"end":{"character":11,"line":20},"start":{"character":7,"line":20}},"relatedInformation":[{"location":{"range":{"end":{"character":10,"line":9},"start":{"character":9,"line":9}},"uri":"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj"},"message":"variable 'a' is immutable"}],"severity":1,"source":"Cangjie"},{"category":727,"code":727,"message":"mismatched types expected 'Bool', found 'Unit', the type of an assignment expression is always 'Unit'","range":{"end":{"character":11,"line":20},"start":{"character":7,"line":20}},"severity":1,"source":"Cangjie"}],"uri":"file:///root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/test/202104270OWBL4P1300/src/diagnostic.cj"}} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":11,"jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"Declared in: annotation.cj \nPackage info: std.core \n\n```cangjie\npublic Type CString\n```\n"},"range":{"end":{"character":16,"line":9},"start":{"character":9,"line":9}}}} | 1 | +{"id":11,"jsonrpc":"2.0","result":{"contents":{"kind":"markdown","value":"Declared in: comparable.cj \nPackage info: std.core \n\n```cangjie\npublic Type CString\n```\n"},"range":{"end":{"character":16,"line":9},"start":{"character":9,"line":9}}}} |
| @@ -1 +1 @@ | |||
| 1 | -{"id":"9","jsonrpc":"2.0","result":{"data":[6,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,2,4,7,17,0,0,9,5,9,0,1,4,7,17,0,0,9,5,9,0,1,4,7,17,0,1,4,7,17,0,1,5,8,13,0,1,9,1,17,0,0,5,6,17,0,1,8,5,13,0,0,6,1,17,0,0,2,8,13,0]}} | 1 | +{"id":"9","jsonrpc":"2.0","result":{"data":[6,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,6,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,1,4,7,17,0,3,4,7,17,0,0,9,5,9,0,1,4,7,17,0,0,9,5,9,0,1,4,7,17,0,1,4,7,17,0,1,5,8,13,0,1,9,1,17,0,0,5,6,17,0,1,8,5,13,0,0,6,1,17,0,0,2,8,13,0]}} |
Mcangjie-language-server/test/testChr/newFeature/syscapCompletion/sysconfig/syscap_api_config.json+2-2
| @@ -3,8 +3,8 @@ | |||
| 3 | "default": { | 3 | "default": { |
| 4 | "deviceSysCap": { | 4 | "deviceSysCap": { |
| 5 | "phone": [ | 5 | "phone": [ |
| 6 | - "/home/project/open_source/lsp/test/testChr/newFeature/syscapCompletion/sysconfig/phone.json", | 6 | + "/root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/newFeature/syscapCompletion/sysconfig/phone.json", |
| 7 | - "/home/project/open_source/lsp/test/testChr/newFeature/syscapCompletion/sysconfig/phone-hmos.json" | 7 | + "/root/workspace/cangjie/modal/cangjie_tools_private/cangjie-language-server/test/testChr/newFeature/syscapCompletion/sysconfig/phone-hmos.json" |
| 8 | ] | 8 | ] |
| 9 | } | 9 | } |
| 10 | } | 10 | } |
| @@ -33,7 +33,7 @@ TEST(FindOverrideMethodsUtilsTest, ResolveFuncParamListTest002) | |||
| 33 | auto paramList = new FuncParamList(); | 33 | auto paramList = new FuncParamList(); |
| 34 | auto param = new FuncParam(); | 34 | auto param = new FuncParam(); |
| 35 | param->identifier = "Int32"; | 35 | param->identifier = "Int32"; |
| 36 | - param->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 36 | + param->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 37 | paramList->params.emplace_back(param); | 37 | paramList->params.emplace_back(param); |
| 38 | funcBody->paramLists.emplace_back(paramList); | 38 | funcBody->paramLists.emplace_back(paramList); |
| 39 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); | 39 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); |
| @@ -50,7 +50,7 @@ TEST(FindOverrideMethodsUtilsTest, ResolveFuncParamListTest003) | |||
| 50 | auto paramList = new FuncParamList(); | 50 | auto paramList = new FuncParamList(); |
| 51 | auto param = new FuncParam(); | 51 | auto param = new FuncParam(); |
| 52 | param->identifier = "Int32"; | 52 | param->identifier = "Int32"; |
| 53 | - param->SetTy(nullptr); | 53 | + param->SetTy(ModalTy{}); |
| 54 | paramList->params.emplace_back(param); | 54 | paramList->params.emplace_back(param); |
| 55 | funcBody->paramLists.emplace_back(paramList); | 55 | funcBody->paramLists.emplace_back(paramList); |
| 56 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); | 56 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); |
| @@ -82,7 +82,7 @@ TEST(FindOverrideMethodsUtilsTest, ResolveFuncRetTypeTest003) | |||
| 82 | auto funcDecl = new FuncDecl(); | 82 | auto funcDecl = new FuncDecl(); |
| 83 | auto funcBody = new FuncBody(); | 83 | auto funcBody = new FuncBody(); |
| 84 | auto retType = new Type(); | 84 | auto retType = new Type(); |
| 85 | - retType->SetTy(nullptr); | 85 | + retType->SetTy(ModalTy{}); |
| 86 | funcBody->retType = OwnedPtr<Type>(retType); | 86 | funcBody->retType = OwnedPtr<Type>(retType); |
| 87 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); | 87 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); |
| 88 | const auto result = ResolveFuncRetType(funcDecl); | 88 | const auto result = ResolveFuncRetType(funcDecl); |
| @@ -225,11 +225,11 @@ TEST(FindOverrideMethodsUtilsTest, ResolveTypeTest007) | |||
| 225 | { | 225 | { |
| 226 | auto paramTy1 = new PrimitiveTy(TypeKind::TYPE_INT32); | 226 | auto paramTy1 = new PrimitiveTy(TypeKind::TYPE_INT32); |
| 227 | auto paramTy2 = new PrimitiveTy(TypeKind::TYPE_FLOAT32); | 227 | auto paramTy2 = new PrimitiveTy(TypeKind::TYPE_FLOAT32); |
| 228 | - auto paramTys = std::vector<Ptr<Ty>>(); | 228 | + auto paramTys = std::vector<ModalTy>(); |
| 229 | - paramTys.emplace_back(paramTy1); | 229 | + paramTys.emplace_back(ModalTy{DataTy{paramTy1}}); |
| 230 | - paramTys.emplace_back(paramTy2); | 230 | + paramTys.emplace_back(ModalTy{DataTy{paramTy2}}); |
| 231 | auto retTy = new PrimitiveTy(TypeKind::TYPE_INT32); | 231 | auto retTy = new PrimitiveTy(TypeKind::TYPE_INT32); |
| 232 | - auto funcTy = new FuncTy(paramTys, retTy); | 232 | + auto funcTy = new FuncTy(paramTys, ModalTy{DataTy{retTy}}); |
| 233 | auto detail = ResolveType(funcTy); | 233 | auto detail = ResolveType(funcTy); |
| 234 | 234 | ||
| 235 | EXPECT_NE(detail, nullptr); | 235 | EXPECT_NE(detail, nullptr); |
| @@ -353,11 +353,11 @@ TEST(FindOverrideMethodsUtilsTest, ResolveFuncDetailTest001) | |||
| 353 | auto paramList = new FuncParamList(); | 353 | auto paramList = new FuncParamList(); |
| 354 | auto param = new FuncParam(); | 354 | auto param = new FuncParam(); |
| 355 | param->identifier = "Int32"; | 355 | param->identifier = "Int32"; |
| 356 | - param->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 356 | + param->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 357 | paramList->params.emplace_back(param); | 357 | paramList->params.emplace_back(param); |
| 358 | funcBody->paramLists.emplace_back(paramList); | 358 | funcBody->paramLists.emplace_back(paramList); |
| 359 | auto retType = new Type(); | 359 | auto retType = new Type(); |
| 360 | - retType->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 360 | + retType->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 361 | funcBody->retType = OwnedPtr<Type>(retType); | 361 | funcBody->retType = OwnedPtr<Type>(retType); |
| 362 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); | 362 | funcDecl->funcBody = OwnedPtr<FuncBody>(funcBody); |
| 363 | 363 | ||
| @@ -378,7 +378,7 @@ TEST(FindOverrideMethodsUtilsTest, ResolvePropDetailTest001) | |||
| 378 | propDecl->identifier = "myProp"; | 378 | propDecl->identifier = "myProp"; |
| 379 | propDecl->EnableAttr(Attribute::PUBLIC); | 379 | propDecl->EnableAttr(Attribute::PUBLIC); |
| 380 | propDecl->EnableAttr(Attribute::STATIC); | 380 | propDecl->EnableAttr(Attribute::STATIC); |
| 381 | - propDecl->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 381 | + propDecl->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 382 | 382 | ||
| 383 | auto detail = ResolvePropDetail(propDecl); | 383 | auto detail = ResolvePropDetail(propDecl); |
| 384 | EXPECT_EQ(detail.identifier, "myProp"); | 384 | EXPECT_EQ(detail.identifier, "myProp"); |
| @@ -56,10 +56,10 @@ TEST(FindDeclUsageTest, CheckParamListEqual_SameParamLists) { | |||
| 56 | 56 | ||
| 57 | // Add identical parameters | 57 | // Add identical parameters |
| 58 | auto param1 = new FuncParam(); | 58 | auto param1 = new FuncParam(); |
| 59 | - param1->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 59 | + param1->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 60 | 60 | ||
| 61 | auto param2 = new FuncParam(); | 61 | auto param2 = new FuncParam(); |
| 62 | - param2->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 62 | + param2->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 63 | 63 | ||
| 64 | srcList->params.emplace_back(param1); | 64 | srcList->params.emplace_back(param1); |
| 65 | targetList->params.emplace_back(param2); | 65 | targetList->params.emplace_back(param2); |
| @@ -73,13 +73,13 @@ TEST(FindDeclUsageTest, CheckParamListEqual_DifferentParamCount) { | |||
| 73 | auto targetList = new FuncParamList(); | 73 | auto targetList = new FuncParamList(); |
| 74 | 74 | ||
| 75 | auto param1 = new FuncParam(); | 75 | auto param1 = new FuncParam(); |
| 76 | - param1->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 76 | + param1->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 77 | 77 | ||
| 78 | auto param2 = new FuncParam(); | 78 | auto param2 = new FuncParam(); |
| 79 | - param2->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 79 | + param2->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 80 | 80 | ||
| 81 | auto param3 = new FuncParam(); | 81 | auto param3 = new FuncParam(); |
| 82 | - param3->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 82 | + param3->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 83 | 83 | ||
| 84 | srcList->params.emplace_back(param1); | 84 | srcList->params.emplace_back(param1); |
| 85 | targetList->params.emplace_back(param2); | 85 | targetList->params.emplace_back(param2); |
| @@ -391,8 +391,8 @@ TEST(FindDeclUsageTest, CheckParamListEqual_NullParamType) { | |||
| 391 | auto srcParam = new FuncParam(); | 391 | auto srcParam = new FuncParam(); |
| 392 | auto targetParam = new FuncParam(); | 392 | auto targetParam = new FuncParam(); |
| 393 | 393 | ||
| 394 | - srcParam->SetTy(nullptr); | 394 | + srcParam->SetTy(ModalTy{}); |
| 395 | - targetParam->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 395 | + targetParam->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 396 | 396 | ||
| 397 | srcList->params.emplace_back(srcParam); | 397 | srcList->params.emplace_back(srcParam); |
| 398 | targetList->params.emplace_back(targetParam); | 398 | targetList->params.emplace_back(targetParam); |
| @@ -408,8 +408,8 @@ TEST(FindDeclUsageTest, CheckParamListEqual_DifferentParamTypes) { | |||
| 408 | auto srcParam = new FuncParam(); | 408 | auto srcParam = new FuncParam(); |
| 409 | auto targetParam = new FuncParam(); | 409 | auto targetParam = new FuncParam(); |
| 410 | 410 | ||
| 411 | - srcParam->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 411 | + srcParam->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 412 | - targetParam->SetTy(new PrimitiveTy(TypeKind::TYPE_INT64)); | 412 | + targetParam->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT64)}}); |
| 413 | 413 | ||
| 414 | srcList->params.emplace_back(srcParam); | 414 | srcList->params.emplace_back(srcParam); |
| 415 | targetList->params.emplace_back(targetParam); | 415 | targetList->params.emplace_back(targetParam); |
| @@ -433,8 +433,8 @@ TEST(FindDeclUsageTest, CheckFunctionEqual_DifferentParamLists) { | |||
| 433 | auto srcParam = new FuncParam(); | 433 | auto srcParam = new FuncParam(); |
| 434 | auto targetParam = new FuncParam(); | 434 | auto targetParam = new FuncParam(); |
| 435 | 435 | ||
| 436 | - srcParam->SetTy(new PrimitiveTy(TypeKind::TYPE_INT32)); | 436 | + srcParam->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT32)}}); |
| 437 | - targetParam->SetTy(new PrimitiveTy(TypeKind::TYPE_INT64)); | 437 | + targetParam->SetTy(ModalTy{DataTy{new PrimitiveTy(TypeKind::TYPE_INT64)}}); |
| 438 | 438 | ||
| 439 | srcParamList->params.emplace_back(srcParam); | 439 | srcParamList->params.emplace_back(srcParam); |
| 440 | targetParamList->params.emplace_back(targetParam); | 440 | targetParamList->params.emplace_back(targetParam); |
| @@ -497,7 +497,7 @@ TEST(ItemResolverUtilTest, ResolveSourceByNode_NullDecl) { | |||
| 497 | TEST(ItemResolverUtilTest, FetchTypeString_NullType) { | 497 | TEST(ItemResolverUtilTest, FetchTypeString_NullType) { |
| 498 | // Test with null type | 498 | // Test with null type |
| 499 | Type type; | 499 | Type type; |
| 500 | - type.SetTy(nullptr); | 500 | + type.SetTy(ModalTy{}); |
| 501 | 501 | ||
| 502 | std::string result = ItemResolverUtil::FetchTypeString(type); | 502 | std::string result = ItemResolverUtil::FetchTypeString(type); |
| 503 | EXPECT_EQ("", result); | 503 | EXPECT_EQ("", result); |
| @@ -758,8 +758,8 @@ ark::TypeCompatibility CheckTypeCompatibility(Ptr<Ty> a, Ptr<Ty> b) { | |||
| 758 | 758 | ||
| 759 | struct FakeFuncTy : public Cangjie::AST::FuncTy { | 759 | struct FakeFuncTy : public Cangjie::AST::FuncTy { |
| 760 | // Default to empty parameter list, null return, and default Config | 760 | // Default to empty parameter list, null return, and default Config |
| 761 | - FakeFuncTy(const std::vector<Ptr<Ty>> ¶ms = {}, | 761 | + explicit FakeFuncTy(const std::vector<ModalTy> ¶ms = {}, |
| 762 | - Ptr<Ty> ret = nullptr, | 762 | + ModalTy ret = ModalTy{}, |
| 763 | const Config &cfg = {}) | 763 | const Config &cfg = {}) |
| 764 | : FuncTy(params, ret, cfg) {} | 764 | : FuncTy(params, ret, cfg) {} |
| 765 | }; | 765 | }; |
| @@ -440,10 +440,10 @@ TEST(UtilsTest, GetVarDeclType001) { | |||
| 440 | auto decl = Ptr<VarDecl>(new VarDecl()); | 440 | auto decl = Ptr<VarDecl>(new VarDecl()); |
| 441 | // Use a plain Type, set its kind to something else | 441 | // Use a plain Type, set its kind to something else |
| 442 | Ptr<TestTy> rType(new TestTy(TypeKind::TYPE_FUNC)); | 442 | Ptr<TestTy> rType(new TestTy(TypeKind::TYPE_FUNC)); |
| 443 | - std::vector<Ptr<Ty>> v; | 443 | + std::vector<ModalTy> v; |
| 444 | - v.emplace_back(nullptr); | 444 | + v.emplace_back(ModalTy{}); |
| 445 | - Ptr<FuncTy> funcTy(new FuncTy(v, rType)); | 445 | + Ptr<FuncTy> funcTy(new FuncTy(v, ModalTy{DataTy{rType}})); |
| 446 | - decl->SetTy(std::move(funcTy)); | 446 | + decl->SetTy(ModalTy{DataTy{std::move(funcTy)}}); |
| 447 | GetVarDeclType(decl); | 447 | GetVarDeclType(decl); |
| 448 | } | 448 | } |
| 449 | 449 | ||
| @@ -510,7 +510,7 @@ TEST(UtilsTest, InImportSpec001) { | |||
| 510 | class FakeVarDecl : public VarDecl { | 510 | class FakeVarDecl : public VarDecl { |
| 511 | public: | 511 | public: |
| 512 | FakeVarDecl() : VarDecl(ASTKind::VAR_DECL) { | 512 | FakeVarDecl() : VarDecl(ASTKind::VAR_DECL) { |
| 513 | - SetTy(nullptr); | 513 | + SetTy(ModalTy{}); |
| 514 | type = nullptr; | 514 | type = nullptr; |
| 515 | } | 515 | } |
| 516 | }; | 516 | }; |
| @@ -527,7 +527,7 @@ public: | |||
| 527 | // Test 086: When both decl->GetTy() and decl->type are null, return empty string | 527 | // Test 086: When both decl->GetTy() and decl->type are null, return empty string |
| 528 | TEST(UtilsTest, GetVarDeclType_086) { | 528 | TEST(UtilsTest, GetVarDeclType_086) { |
| 529 | Ptr<FakeVarDecl> decl(new FakeVarDecl()); | 529 | Ptr<FakeVarDecl> decl(new FakeVarDecl()); |
| 530 | - decl->SetTy(nullptr); | 530 | + decl->SetTy(ModalTy{}); |
| 531 | decl->type = nullptr; | 531 | decl->type = nullptr; |
| 532 | 532 | ||
| 533 | std::string result = GetVarDeclType(decl, nullptr); | 533 | std::string result = GetVarDeclType(decl, nullptr); |
| @@ -568,8 +568,8 @@ TEST(UtilsTest, GetVarDeclType_088) { | |||
| 568 | Ptr<FakeVarDecl> decl(new FakeVarDecl()); | 568 | Ptr<FakeVarDecl> decl(new FakeVarDecl()); |
| 569 | 569 | ||
| 570 | // Create a function type | 570 | // Create a function type |
| 571 | - std::vector<Ptr<Ty>> params; | 571 | + std::vector<ModalTy> params; |
| 572 | - decl->SetTy(Ptr<Ty>(new FuncTy(params, nullptr))); | 572 | + decl->SetTy(Ptr<Ty>(new FuncTy(params, ModalTy{}))); |
| 573 | 573 | ||
| 574 | // Logic: TYPE_FUNC triggers GetDetailByTy and ReplaceTuple | 574 | // Logic: TYPE_FUNC triggers GetDetailByTy and ReplaceTuple |
| 575 | std::string result = GetVarDeclType(decl, nullptr); | 575 | std::string result = GetVarDeclType(decl, nullptr); |
| @@ -58,7 +58,7 @@ static bool checkUpperBounds( | |||
| 58 | return true; | 58 | return true; |
| 59 | } | 59 | } |
| 60 | // When B is the parent type of A, the API is compatible. Conversely, it is not compatible. | 60 | // When B is the parent type of A, the API is compatible. Conversely, it is not compatible. |
| 61 | - if (dsl.IsParentType(upperTypeB->GetTy(), upperTypeA->GetTy())) { | 61 | + if (dsl.IsParentType(upperTypeB->GetTy().get(), upperTypeA->GetTy().get())) { |
| 62 | isParentType = true; | 62 | isParentType = true; |
| 63 | return false; | 63 | return false; |
| 64 | } | 64 | } |
| @@ -174,8 +174,8 @@ bool CheckerImpl::VarGlobalType( | |||
| 174 | BEGIN_FORALL( | 174 | BEGIN_FORALL( |
| 175 | v1, diff.GetDomPotentiallyModified(), dsl.VarLetOrConst(v1) && dsl.TopLevel(v1) && diff.ModuleVisible(v1)) | 175 | v1, diff.GetDomPotentiallyModified(), dsl.VarLetOrConst(v1) && dsl.TopLevel(v1) && diff.ModuleVisible(v1)) |
| 176 | LETIF(v2, dsl.Corresponding(v1, diff.PotentiallyModified()), dsl.VarLetOrConst(v2) && dsl.TopLevel(v2)) | 176 | LETIF(v2, dsl.Corresponding(v1, diff.PotentiallyModified()), dsl.VarLetOrConst(v2) && dsl.TopLevel(v2)) |
| 177 | - auto t1 = v1->GetTy().get(); | 177 | + auto t1 = v1->DataTy(); |
| 178 | - auto t2 = v2->GetTy().get(); | 178 | + auto t2 = v2->DataTy(); |
| 179 | auto sameClassLikeType = t1->IsClassLike() && t2->IsClassLike(); | 179 | auto sameClassLikeType = t1->IsClassLike() && t2->IsClassLike(); |
| 180 | // When B is a subtype of A, AND both A and B are of the class or interface type, the two types are compatible. | 180 | // When B is a subtype of A, AND both A and B are of the class or interface type, the two types are compatible. |
| 181 | // Otherwise, it is not compatible. | 181 | // Otherwise, it is not compatible. |
| @@ -270,7 +270,9 @@ bool CheckerImpl::EnumInstMemberVarModified( | |||
| 270 | for (; v1 != e1Constructors.end() && v2 != e2Constructors.end(); ++v1, ++v2) { | 270 | for (; v1 != e1Constructors.end() && v2 != e2Constructors.end(); ++v1, ++v2) { |
| 271 | LETIF(v1Corsp, dsl.Corresponding(*v1, diff.GetPotentiallyMemberModified(e1)), v1Corsp != nullptr) | 271 | LETIF(v1Corsp, dsl.Corresponding(*v1, diff.GetPotentiallyMemberModified(e1)), v1Corsp != nullptr) |
| 272 | CHECK(RuleKind::ENUM_MEMBER_VAR_ORDER_MODIFIED, | 272 | CHECK(RuleKind::ENUM_MEMBER_VAR_ORDER_MODIFIED, |
| 273 | - ((*v1)->mangledName == (*v2)->mangledName) || !dsl.SameType((*v1)->GetTy(), v1Corsp->GetTy()), *v1, *v2); | 273 | + ((*v1)->mangledName == (*v2)->mangledName) || |
| 274 | + !dsl.SameType((*v1)->DataTy(), v1Corsp->DataTy()), | ||
| 275 | + *v1, *v2); | ||
| 274 | } | 276 | } |
| 275 | END_FORALL() | 277 | END_FORALL() |
| 276 | return checkerResult; | 278 | return checkerResult; |
| @@ -179,7 +179,7 @@ static bool CheckConstructorParam( | |||
| 179 | if (!p1 || !p2) { | 179 | if (!p1 || !p2) { |
| 180 | continue; | 180 | continue; |
| 181 | } | 181 | } |
| 182 | - if (!dsl.SameType(p1->GetTy(), p2->GetTy()) || dsl.NameOfParam(p1) != dsl.NameOfParam(p2)) { | 182 | + if (!dsl.SameType(p1->DataTy(), p2->DataTy()) || dsl.NameOfParam(p1) != dsl.NameOfParam(p2)) { |
| 183 | sameParamType = false; | 183 | sameParamType = false; |
| 184 | break; | 184 | break; |
| 185 | } | 185 | } |
| @@ -748,7 +748,7 @@ void CheckerImpl::CheckFuncParams( | |||
| 748 | continue; | 748 | continue; |
| 749 | } | 749 | } |
| 750 | auto sameName = dsl.NameOfParam(p1) == dsl.NameOfParam(p2); | 750 | auto sameName = dsl.NameOfParam(p1) == dsl.NameOfParam(p2); |
| 751 | - auto sameType = dsl.SameType(p1->GetTy(), p2->GetTy()); | 751 | + auto sameType = dsl.SameType(p1->DataTy(), p2->DataTy()); |
| 752 | if (dsl.IsNamedParam(p1)) { | 752 | if (dsl.IsNamedParam(p1)) { |
| 753 | // The named parameter of function has been changed to unnamed parameter. | 753 | // The named parameter of function has been changed to unnamed parameter. |
| 754 | CHECK(RuleKind::FUNC_PARAMETER_NAMED_TO_UNNAMED, dsl.IsNamedParam(p2), f1, f2, p1, p2); | 754 | CHECK(RuleKind::FUNC_PARAMETER_NAMED_TO_UNNAMED, dsl.IsNamedParam(p2), f1, f2, p1, p2); |
| @@ -786,7 +786,7 @@ void CheckerImpl::CheckFuncParams( | |||
| 786 | } | 786 | } |
| 787 | // Change the parameter type from A to B. | 787 | // Change the parameter type from A to B. |
| 788 | // API: compatible when B is the parent type of A; conversely, incompatible. ABI: incompatible. | 788 | // API: compatible when B is the parent type of A; conversely, incompatible. ABI: incompatible. |
| 789 | - if (dsl.IsParentType(p2->GetTy(), p1->GetTy())) { | 789 | + if (dsl.IsParentType(p2->DataTy(), p1->DataTy())) { |
| 790 | CHECK(RuleKind::FUNC_CHANGE_TYPE_OF_PARAMETER, false, f1, f2, p1, p2); | 790 | CHECK(RuleKind::FUNC_CHANGE_TYPE_OF_PARAMETER, false, f1, f2, p1, p2); |
| 791 | } else { | 791 | } else { |
| 792 | CHECK(RuleKind::FUNC_CHANGE_TYPE_OF_PARAMETER_NOT_PARENT_TYPE, false, f1, f2, p1, p2); | 792 | CHECK(RuleKind::FUNC_CHANGE_TYPE_OF_PARAMETER_NOT_PARENT_TYPE, false, f1, f2, p1, p2); |
| @@ -917,7 +917,8 @@ bool CheckerImpl::StructMemberPropDeletedOrChanged( | |||
| 917 | CHECK(RuleKind::STRUCT_MEMBER_PROP_ANNO_CHANGED2, | 917 | CHECK(RuleKind::STRUCT_MEMBER_PROP_ANNO_CHANGED2, |
| 918 | !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); | 918 | !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); |
| 919 | // The return type of member property has been changed. | 919 | // The return type of member property has been changed. |
| 920 | - CHECK(RuleKind::STRUCT_MEMBER_PROP_RETURN_TYPE_CHANGED, dsl.SameType(p1->GetTy(), p2->GetTy()), p1, p2); | 920 | + CHECK(RuleKind::STRUCT_MEMBER_PROP_RETURN_TYPE_CHANGED, |
| 921 | + dsl.SameType(p1->DataTy(), p2->DataTy()), p1, p2); | ||
| 921 | // The funcbody of getter/setter in member property has been changed. | 922 | // The funcbody of getter/setter in member property has been changed. |
| 922 | NodeInfo propInfo{p1, p2}; | 923 | NodeInfo propInfo{p1, p2}; |
| 923 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); | 924 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); |
| @@ -1032,7 +1033,8 @@ bool CheckerImpl::EnumMemberPropDeletedOrChanged( | |||
| 1032 | // The annotation(Frozen) of member property has been deleted. | 1033 | // The annotation(Frozen) of member property has been deleted. |
| 1033 | CHECK(RuleKind::ENUM_MEMBER_PROP_ANNO_CHANGED2, !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); | 1034 | CHECK(RuleKind::ENUM_MEMBER_PROP_ANNO_CHANGED2, !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); |
| 1034 | // The return type of member property has been changed. | 1035 | // The return type of member property has been changed. |
| 1035 | - CHECK(RuleKind::ENUM_MEMBER_PROP_RETURN_TYPE_CHANGED, dsl.SameType(p1->GetTy(), p2->GetTy()), p1, p2); | 1036 | + CHECK(RuleKind::ENUM_MEMBER_PROP_RETURN_TYPE_CHANGED, |
| 1037 | + dsl.SameType(p1->DataTy(), p2->DataTy()), p1, p2); | ||
| 1036 | // The funcbody of getter/setter in member property has been changed. | 1038 | // The funcbody of getter/setter in member property has been changed. |
| 1037 | NodeInfo propInfo{p1, p2}; | 1039 | NodeInfo propInfo{p1, p2}; |
| 1038 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); | 1040 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); |
| @@ -1075,7 +1077,8 @@ bool CheckerImpl::ClassInstanceMemberPropRetTypeOrBodyChanged( | |||
| 1075 | BEGIN_FORALL(p1, diff.GetDomPotentiallyMemberModified(c1), dsl.PropDecl(p1) && diff.ModuleVisible(p1)); | 1077 | BEGIN_FORALL(p1, diff.GetDomPotentiallyMemberModified(c1), dsl.PropDecl(p1) && diff.ModuleVisible(p1)); |
| 1076 | LETIF(p2, dsl.Corresponding(p1, diff.GetPotentiallyMemberModified(c1)), dsl.PropDecl(p2)) | 1078 | LETIF(p2, dsl.Corresponding(p1, diff.GetPotentiallyMemberModified(c1)), dsl.PropDecl(p2)) |
| 1077 | // The return type of member property has been changed. | 1079 | // The return type of member property has been changed. |
| 1078 | - CHECK(RuleKind::CLASS_INSTANCE_MEMBER_PROP_RETURN_TYPE_CHANGED, dsl.SameType(p1->GetTy(), p2->GetTy()), p1, p2); | 1080 | + CHECK(RuleKind::CLASS_INSTANCE_MEMBER_PROP_RETURN_TYPE_CHANGED, |
| 1081 | + dsl.SameType(p1->DataTy(), p2->DataTy()), p1, p2); | ||
| 1079 | // The funcbody of getter/setter in member property has been changed. | 1082 | // The funcbody of getter/setter in member property has been changed. |
| 1080 | NodeInfo propInfo{p1, p2}; | 1083 | NodeInfo propInfo{p1, p2}; |
| 1081 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); | 1084 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); |
| @@ -1163,7 +1166,8 @@ bool CheckerImpl::InterfaceMemberPropAddedDeletedOrChanged( | |||
| 1163 | // The annotation(Frozen) of member property has been deleted. | 1166 | // The annotation(Frozen) of member property has been deleted. |
| 1164 | CHECK(RuleKind::INTERFACE_MEMBER_PROP_FROZEN_DELETED, !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); | 1167 | CHECK(RuleKind::INTERFACE_MEMBER_PROP_FROZEN_DELETED, !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); |
| 1165 | // The return type of member property has been changed. | 1168 | // The return type of member property has been changed. |
| 1166 | - CHECK(RuleKind::INTERFACE_MEMBER_PROP_RETURN_TYPE_CHANGED, dsl.SameType(p1->GetTy(), p2->GetTy()), p1, p2); | 1169 | + CHECK(RuleKind::INTERFACE_MEMBER_PROP_RETURN_TYPE_CHANGED, |
| 1170 | + dsl.SameType(p1->DataTy(), p2->DataTy()), p1, p2); | ||
| 1167 | // The funcbody of getter/setter in member property has been changed. | 1171 | // The funcbody of getter/setter in member property has been changed. |
| 1168 | NodeInfo propInfo{p1, p2}; | 1172 | NodeInfo propInfo{p1, p2}; |
| 1169 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); | 1173 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); |
| @@ -1232,7 +1236,8 @@ bool CheckerImpl::ExtendMemberPropAddedDeletedOrChanged( | |||
| 1232 | // The annotation(Frozen) of member property has been deleted. | 1236 | // The annotation(Frozen) of member property has been deleted. |
| 1233 | CHECK(RuleKind::EXTEND_MEMBER_PROP_FROZEN_DELETED, !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); | 1237 | CHECK(RuleKind::EXTEND_MEMBER_PROP_FROZEN_DELETED, !IsFrozenAnnotationDeleted(dsl, p1, p2), p1, p2); |
| 1234 | // The return type of member property has been changed. | 1238 | // The return type of member property has been changed. |
| 1235 | - CHECK(RuleKind::EXTEND_MEMBER_PROP_RETURN_TYPE_CHANGED, dsl.SameType(p1->GetTy(), p2->GetTy()), p1, p2); | 1239 | + CHECK(RuleKind::EXTEND_MEMBER_PROP_RETURN_TYPE_CHANGED, |
| 1240 | + dsl.SameType(p1->DataTy(), p2->DataTy()), p1, p2); | ||
| 1236 | // The funcbody of getter/setter in member property has been changed. | 1241 | // The funcbody of getter/setter in member property has been changed. |
| 1237 | NodeInfo propInfo{p1, p2}; | 1242 | NodeInfo propInfo{p1, p2}; |
| 1238 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); | 1243 | CheckPropBodyChanged(dsl, logger, checker, checkerResult, propInfo); |
| @@ -40,10 +40,12 @@ bool CheckerImpl::StructMemberVarModified( | |||
| 40 | dsl.IsConst(v1) && dsl.IsConst(v2), v1, v2); | 40 | dsl.IsConst(v1) && dsl.IsConst(v2), v1, v2); |
| 41 | } | 41 | } |
| 42 | if (dsl.IsPublic(v1) && dsl.IsPublic(v2)) { | 42 | if (dsl.IsPublic(v1) && dsl.IsPublic(v2)) { |
| 43 | - CHECK(RuleKind::STRUCT_MEMBER_VAR_TYPE_MODIFIED, dsl.SameType(v1->GetTy(), v2->GetTy()), v1, v2); | 43 | + CHECK(RuleKind::STRUCT_MEMBER_VAR_TYPE_MODIFIED, |
| 44 | + dsl.SameType(v1->DataTy(), v2->DataTy()), v1, v2); | ||
| 44 | } | 45 | } |
| 45 | if (!dsl.IsPublic(v1) && !dsl.IsPublic(v2)) { | 46 | if (!dsl.IsPublic(v1) && !dsl.IsPublic(v2)) { |
| 46 | - CHECK(RuleKind::STRUCT_NONPUBLIC_MEMBER_VAR_TYPE_MODIFIED, dsl.SameType(v1->GetTy(), v2->GetTy()), v1, v2); | 47 | + CHECK(RuleKind::STRUCT_NONPUBLIC_MEMBER_VAR_TYPE_MODIFIED, |
| 48 | + dsl.SameType(v1->DataTy(), v2->DataTy()), v1, v2); | ||
| 47 | } | 49 | } |
| 48 | CHECK(RuleKind::STRUCT_INSTANCE_VAR_ACCESS_MODIFIED, | 50 | CHECK(RuleKind::STRUCT_INSTANCE_VAR_ACCESS_MODIFIED, |
| 49 | !(dsl.IsPublic(v1) && !dsl.IsPublic(v2)), v1, v2); | 51 | !(dsl.IsPublic(v1) && !dsl.IsPublic(v2)), v1, v2); |
| @@ -65,7 +67,7 @@ bool CheckerImpl::StructMemberVarModified( | |||
| 65 | if (!(*v1)->TestAttr(Attribute::STATIC) && !(*v2)->TestAttr(Attribute::STATIC)) { | 67 | if (!(*v1)->TestAttr(Attribute::STATIC) && !(*v2)->TestAttr(Attribute::STATIC)) { |
| 66 | CHECK(RuleKind::STRUCT_MEMBER_VAR_ORDER_MODIFIED, | 68 | CHECK(RuleKind::STRUCT_MEMBER_VAR_ORDER_MODIFIED, |
| 67 | ((*v1)->mangledName == (*v2)->mangledName) || v1Corsp == nullptr || | 69 | ((*v1)->mangledName == (*v2)->mangledName) || v1Corsp == nullptr || |
| 68 | - !dsl.SameType((*v1)->GetTy(), v1Corsp->GetTy()), | 70 | + !dsl.SameType((*v1)->GetTy().get(), v1Corsp->GetTy().get()), |
| 69 | *v1, *v2); | 71 | *v1, *v2); |
| 70 | } | 72 | } |
| 71 | } | 73 | } |
| @@ -256,7 +258,7 @@ bool CheckerImpl::ClassInstMemberVarModified( | |||
| 256 | 258 | ||
| 257 | for (; v1 != c1Vars.end() && v2 != c2Vars.end(); ++v1, ++v2) { | 259 | for (; v1 != c1Vars.end() && v2 != c2Vars.end(); ++v1, ++v2) { |
| 258 | LETIF(v1Corsp, dsl.Corresponding(*v1, diff.GetPotentiallyMemberModified(c1)), v1Corsp != nullptr) | 260 | LETIF(v1Corsp, dsl.Corresponding(*v1, diff.GetPotentiallyMemberModified(c1)), v1Corsp != nullptr) |
| 259 | - auto modifyVarType = !dsl.SameType((*v1)->GetTy(), v1Corsp->GetTy()); | 261 | + auto modifyVarType = !dsl.SameType((*v1)->GetTy().get(), v1Corsp->GetTy().get()); |
| 260 | if (dsl.IsPublicOrProtected(*v1) && dsl.IsPublicOrProtected(v1Corsp)) { | 262 | if (dsl.IsPublicOrProtected(*v1) && dsl.IsPublicOrProtected(v1Corsp)) { |
| 261 | CHECK(RuleKind::CLASS_PUBLIC_PROTECTED_MEMBER_VAR_TYPE_MODIFIED, !modifyVarType, *v1, v1Corsp); | 263 | CHECK(RuleKind::CLASS_PUBLIC_PROTECTED_MEMBER_VAR_TYPE_MODIFIED, !modifyVarType, *v1, v1Corsp); |
| 262 | } | 264 | } |
| @@ -264,7 +266,9 @@ bool CheckerImpl::ClassInstMemberVarModified( | |||
| 264 | CHECK(RuleKind::CLASS_PRIVATE_INTERNAL_MEMBER_VAR_TYPE_MODIFIED, !modifyVarType, *v1, v1Corsp); | 266 | CHECK(RuleKind::CLASS_PRIVATE_INTERNAL_MEMBER_VAR_TYPE_MODIFIED, !modifyVarType, *v1, v1Corsp); |
| 265 | } | 267 | } |
| 266 | CHECK(RuleKind::CLASS_MEMBER_VAR_ORDER_MODIFIED, | 268 | CHECK(RuleKind::CLASS_MEMBER_VAR_ORDER_MODIFIED, |
| 267 | - ((*v1)->mangledName == (*v2)->mangledName) || !dsl.SameType((*v1)->GetTy(), v1Corsp->GetTy()), *v1, *v2); | 269 | + ((*v1)->mangledName == (*v2)->mangledName) || |
| 270 | + !dsl.SameType((*v1)->GetTy().get(), v1Corsp->GetTy().get()), | ||
| 271 | + *v1, *v2); | ||
| 268 | } | 272 | } |
| 269 | 273 | ||
| 270 | BEGIN_FORALL(v1, diff.GetDomPotentiallyMemberModified(c1), | 274 | BEGIN_FORALL(v1, diff.GetDomPotentiallyMemberModified(c1), |
| @@ -192,7 +192,7 @@ static std::string GetTypeName(const Ty* ty) | |||
| 192 | if (!aliasTy->declPtr || !aliasTy->declPtr->type || !aliasTy->declPtr->type->GetTy()) { | 192 | if (!aliasTy->declPtr || !aliasTy->declPtr->type || !aliasTy->declPtr->type->GetTy()) { |
| 193 | return Ty::ToString(ty); | 193 | return Ty::ToString(ty); |
| 194 | } | 194 | } |
| 195 | - return GetTypeName(aliasTy->declPtr->type->GetTy()); | 195 | + return GetTypeName(aliasTy->declPtr->type->GetTy().get()); |
| 196 | } | 196 | } |
| 197 | 197 | ||
| 198 | static std::string GetExtendTypeName(const AST::ExtendDecl* ed) | 198 | static std::string GetExtendTypeName(const AST::ExtendDecl* ed) |
| @@ -206,7 +206,7 @@ static std::string GetExtendTypeName(const AST::ExtendDecl* ed) | |||
| 206 | } | 206 | } |
| 207 | // The extend type is RefType, and may be an alias type. | 207 | // The extend type is RefType, and may be an alias type. |
| 208 | if (ed->extendedType->GetTy() && ed->extendedType->GetTy()->kind == TypeKind::TYPE) { | 208 | if (ed->extendedType->GetTy() && ed->extendedType->GetTy()->kind == TypeKind::TYPE) { |
| 209 | - return GetTypeName(ed->extendedType->GetTy()); | 209 | + return GetTypeName(ed->extendedType->GetTy().get()); |
| 210 | } | 210 | } |
| 211 | if (ed->extendedType->astKind != AST::ASTKind::REF_TYPE) { | 211 | if (ed->extendedType->astKind != AST::ASTKind::REF_TYPE) { |
| 212 | return ""; | 212 | return ""; |
| @@ -286,8 +286,8 @@ void Diff::Print() const | |||
| 286 | for (auto decl : potentiallyModified) { | 286 | for (auto decl : potentiallyModified) { |
| 287 | auto first = static_cast<Cangjie::AST::Decl*>(decl.first); | 287 | auto first = static_cast<Cangjie::AST::Decl*>(decl.first); |
| 288 | auto second = static_cast<Cangjie::AST::Decl*>(decl.second); | 288 | auto second = static_cast<Cangjie::AST::Decl*>(decl.second); |
| 289 | - std::cout << " " << first->identifier << Cangjie::AST::Ty::ToString(first->GetTy()) << " - " | 289 | + std::cout << " " << first->identifier << Cangjie::AST::Ty::ToString(first->GetTy().Ty()) << " - " |
| 290 | - << second->identifier << Cangjie::AST::Ty::ToString(second->GetTy()) << std::endl; | 290 | + << second->identifier << Cangjie::AST::Ty::ToString(second->GetTy().Ty()) << std::endl; |
| 291 | } | 291 | } |
| 292 | } | 292 | } |
| 293 | std::cout << std::endl; | 293 | std::cout << std::endl; |
| @@ -11,6 +11,16 @@ using namespace Cangjie; | |||
| 11 | using namespace Cangjie::AST; | 11 | using namespace Cangjie::AST; |
| 12 | 12 | ||
| 13 | namespace { | 13 | namespace { |
| 14 | +static std::vector<Ptr<Ty>> ToDataTys(const std::vector<ModalTy>& modalTys) | ||
| 15 | +{ | ||
| 16 | + std::vector<Ptr<Ty>> dataTys; | ||
| 17 | + dataTys.reserve(modalTys.size()); | ||
| 18 | + for (const auto& modalTy : modalTys) { | ||
| 19 | + dataTys.emplace_back(modalTy.Ty()); | ||
| 20 | + } | ||
| 21 | + return dataTys; | ||
| 22 | +} | ||
| 23 | + | ||
| 14 | static Ptr<Ty> GetTyFromASTType(TypeManager& typeManager, const Ty* ty, const std::vector<Ptr<Ty>>& typeArgs) | 24 | static Ptr<Ty> GetTyFromASTType(TypeManager& typeManager, const Ty* ty, const std::vector<Ptr<Ty>>& typeArgs) |
| 15 | { | 25 | { |
| 16 | auto pDecl = Ty::GetDeclOfTy(ty); | 26 | auto pDecl = Ty::GetDeclOfTy(ty); |
| @@ -37,7 +47,7 @@ static Ptr<Ty> GetTyFromASTType(TypeManager& typeManager, const Ty* ty, const st | |||
| 37 | default: | 47 | default: |
| 38 | break; | 48 | break; |
| 39 | } | 49 | } |
| 40 | - return pDecl->GetTy(); | 50 | + return pDecl->GetTy().Ty(); |
| 41 | } | 51 | } |
| 42 | 52 | ||
| 43 | static std::string GetTypeName(TypeManager& typeManager, const Ty* ty, const std::vector<Ptr<Ty>>& typeArgs = {}) | 53 | static std::string GetTypeName(TypeManager& typeManager, const Ty* ty, const std::vector<Ptr<Ty>>& typeArgs = {}) |
| @@ -56,19 +66,19 @@ static std::string GetTypeName(TypeManager& typeManager, const Ty* ty, const std | |||
| 56 | if (!aliasTy->declPtr || !aliasTy->declPtr->type || !aliasTy->declPtr->type->GetTy()) { | 66 | if (!aliasTy->declPtr || !aliasTy->declPtr->type || !aliasTy->declPtr->type->GetTy()) { |
| 57 | return tystr; | 67 | return tystr; |
| 58 | } | 68 | } |
| 59 | - return GetTypeName(typeManager, aliasTy->declPtr->type->GetTy(), ty->typeArgs); | 69 | + return GetTypeName(typeManager, aliasTy->declPtr->type->GetTy().Ty(), ToDataTys(ty->typeArgs)); |
| 60 | } | 70 | } |
| 61 | if (ty->kind == TypeKind::TYPE_FUNC) { | 71 | if (ty->kind == TypeKind::TYPE_FUNC) { |
| 62 | auto funcTy = static_cast<const FuncTy*>(ty); | 72 | auto funcTy = static_cast<const FuncTy*>(ty); |
| 63 | std::string str{"("}; | 73 | std::string str{"("}; |
| 64 | for (auto& paramTy : funcTy->paramTys) { | 74 | for (auto& paramTy : funcTy->paramTys) { |
| 65 | if (¶mTy == &funcTy->paramTys.back()) { | 75 | if (¶mTy == &funcTy->paramTys.back()) { |
| 66 | - str += GetTypeName(typeManager, paramTy, typeArgs); | 76 | + str += GetTypeName(typeManager, paramTy.Ty(), typeArgs); |
| 67 | } else { | 77 | } else { |
| 68 | - str += GetTypeName(typeManager, paramTy, typeArgs) + ", "; | 78 | + str += GetTypeName(typeManager, paramTy.Ty(), typeArgs) + ", "; |
| 69 | } | 79 | } |
| 70 | } | 80 | } |
| 71 | - str = str + ") -> " + GetTypeName(typeManager, funcTy->retTy, typeArgs); | 81 | + str = str + ") -> " + GetTypeName(typeManager, funcTy->retTy.Ty(), typeArgs); |
| 72 | return funcTy->IsCFunc() ? "CFunc<" + str + ">" : str; | 82 | return funcTy->IsCFunc() ? "CFunc<" + str + ">" : str; |
| 73 | } | 83 | } |
| 74 | if (ty->HasGeneric() && ty->typeArgs.size() == typeArgs.size()) { | 84 | if (ty->HasGeneric() && ty->typeArgs.size() == typeArgs.size()) { |
| @@ -472,8 +482,8 @@ bool Dsl::SameFunc(Node* n1, Node* n2) | |||
| 472 | } | 482 | } |
| 473 | auto paramNum = fd1->funcBody->paramLists[0]->params.size(); | 483 | auto paramNum = fd1->funcBody->paramLists[0]->params.size(); |
| 474 | for (size_t i = 0; i < paramNum; i++) { | 484 | for (size_t i = 0; i < paramNum; i++) { |
| 475 | - if (!SameType(fd1->funcBody->paramLists[0]->params[i]->GetTy(), | 485 | + if (!SameType(fd1->funcBody->paramLists[0]->params[i]->GetTy().get(), |
| 476 | - fd2->funcBody->paramLists[0]->params[i]->GetTy())) { | 486 | + fd2->funcBody->paramLists[0]->params[i]->GetTy().get())) { |
| 477 | return false; | 487 | return false; |
| 478 | } | 488 | } |
| 479 | } | 489 | } |
| @@ -670,7 +680,7 @@ bool Dsl::SameNamelessDecl(const Node* x1, const Node* x2, bool isClass) | |||
| 670 | } | 680 | } |
| 671 | return false; | 681 | return false; |
| 672 | } | 682 | } |
| 673 | - if (!SameType(x1->GetTy(), x2->GetTy())) { | 683 | + if (!SameType(x1->GetTy().get(), x2->GetTy().get())) { |
| 674 | return false; | 684 | return false; |
| 675 | } | 685 | } |
| 676 | if (IsInitialized(x1) && IsInitialized(x2) && VarLetOrConst(x1)) { | 686 | if (IsInitialized(x1) && IsInitialized(x2) && VarLetOrConst(x1)) { |
| @@ -685,7 +695,7 @@ bool Dsl::SameVarValue(const Node* x1, const Node* x2) | |||
| 685 | CJC_ASSERT(v1 != nullptr); | 695 | CJC_ASSERT(v1 != nullptr); |
| 686 | auto v2 = dynamic_cast<const VarDecl*>(x2); | 696 | auto v2 = dynamic_cast<const VarDecl*>(x2); |
| 687 | CJC_ASSERT(v2 != nullptr); | 697 | CJC_ASSERT(v2 != nullptr); |
| 688 | - if (!Subtype(v1->GetTy(), v2->GetTy()) && !IsParentType(v1->GetTy(), v2->GetTy())) { | 698 | + if (!Subtype(v1->GetTy().get(), v2->GetTy().get()) && !IsParentType(v1->GetTy().get(), v2->GetTy().get())) { |
| 689 | return false; | 699 | return false; |
| 690 | } | 700 | } |
| 691 | if (auto litConstExpr1 = dynamic_cast<LitConstExpr*>(v1->initializer.get().get()); litConstExpr1) { | 701 | if (auto litConstExpr1 = dynamic_cast<LitConstExpr*>(v1->initializer.get().get()); litConstExpr1) { |
| @@ -762,7 +772,10 @@ bool Dsl::IsConst(const Node* x) | |||
| 762 | 772 | ||
| 763 | bool Dsl::IsClass(const OwnedPtr<Type>& x) | 773 | bool Dsl::IsClass(const OwnedPtr<Type>& x) |
| 764 | { | 774 | { |
| 765 | - return x && x->GetTy() && x->GetTy()->kind == TypeKind::TYPE_CLASS && Ty::ToString(x->GetTy()) != "Class-Object"; | 775 | + if (!x || !x->GetTy() || x->TyKind() != TypeKind::TYPE_CLASS) { |
| 776 | + return false; | ||
| 777 | + } | ||
| 778 | + return Ty::ToString(x->DataTy()) != "Class-Object"; | ||
| 766 | } | 779 | } |
| 767 | 780 | ||
| 768 | bool Dsl::IsInterface(const OwnedPtr<Type>& x) | 781 | bool Dsl::IsInterface(const OwnedPtr<Type>& x) |
| @@ -813,7 +826,7 @@ Ty* Dsl::AliasTargetTy(const Node* n) | |||
| 813 | if (!n || n->astKind != ASTKind::TYPE_ALIAS_DECL) { | 826 | if (!n || n->astKind != ASTKind::TYPE_ALIAS_DECL) { |
| 814 | return nullptr; | 827 | return nullptr; |
| 815 | } | 828 | } |
| 816 | - return static_cast<const TypeAliasDecl*>(n)->type->GetTy(); | 829 | + return static_cast<const TypeAliasDecl*>(n)->type->GetTy().get(); |
| 817 | } | 830 | } |
| 818 | 831 | ||
| 819 | Ty* Dsl::TypeOf(const Node* n) | 832 | Ty* Dsl::TypeOf(const Node* n) |
| @@ -16,7 +16,7 @@ static Ptr<Ty> GetType(Ptr<Ty> ty) | |||
| 16 | if (!ty || ty->typeArgs.empty()) { | 16 | if (!ty || ty->typeArgs.empty()) { |
| 17 | return nullptr; | 17 | return nullptr; |
| 18 | } | 18 | } |
| 19 | - return ty->typeArgs[0]; | 19 | + return ty->typeArgs[0].Ty(); |
| 20 | } | 20 | } |
| 21 | 21 | ||
| 22 | void StructuralRuleFFIC7::CheckPointerExpr(Ptr<AST::Node> node) | 22 | void StructuralRuleFFIC7::CheckPointerExpr(Ptr<AST::Node> node) |
| @@ -26,11 +26,11 @@ void StructuralRuleFFIC7::CheckPointerExpr(Ptr<AST::Node> node) | |||
| 26 | return VisitAction::WALK_CHILDREN; | 26 | return VisitAction::WALK_CHILDREN; |
| 27 | } | 27 | } |
| 28 | auto pointerExpr = StaticAs<ASTKind::POINTER_EXPR>(node); | 28 | auto pointerExpr = StaticAs<ASTKind::POINTER_EXPR>(node); |
| 29 | - auto toTy = GetType(pointerExpr->GetTy()); | 29 | + auto toTy = GetType(pointerExpr->GetTy().Ty()); |
| 30 | if (!pointerExpr->arg || !pointerExpr->arg->GetTy()) { | 30 | if (!pointerExpr->arg || !pointerExpr->arg->GetTy()) { |
| 31 | return VisitAction::WALK_CHILDREN; | 31 | return VisitAction::WALK_CHILDREN; |
| 32 | } | 32 | } |
| 33 | - auto fromTy = GetType(pointerExpr->arg->GetTy()); | 33 | + auto fromTy = GetType(pointerExpr->arg->GetTy().Ty()); |
| 34 | if (!toTy || !fromTy) { | 34 | if (!toTy || !fromTy) { |
| 35 | return VisitAction::WALK_CHILDREN; | 35 | return VisitAction::WALK_CHILDREN; |
| 36 | } | 36 | } |
| @@ -69,7 +69,7 @@ void StructuralRuleGDCL01::FuncDeclProcessor( | |||
| 69 | FuncDecl& funcDecl, std::map<std::string, std::stack<Decl*>>& funcContainer) | 69 | FuncDecl& funcDecl, std::map<std::string, std::stack<Decl*>>& funcContainer) |
| 70 | { | 70 | { |
| 71 | // get func param types | 71 | // get func param types |
| 72 | - auto types = DynamicCast<FuncTy*>(funcDecl.GetTy()); | 72 | + auto types = DynamicCast<FuncTy*>(funcDecl.GetTy().get()); |
| 73 | if (!types) { | 73 | if (!types) { |
| 74 | return; | 74 | return; |
| 75 | } | 75 | } |
| @@ -114,7 +114,7 @@ void StructuralRuleGDCL01::PostVarDeclProcessor( | |||
| 114 | void StructuralRuleGDCL01::PostFuncDeclProcessor( | 114 | void StructuralRuleGDCL01::PostFuncDeclProcessor( |
| 115 | FuncDecl& funcDecl, std::map<std::string, std::stack<Decl*>>& funcContainer) | 115 | FuncDecl& funcDecl, std::map<std::string, std::stack<Decl*>>& funcContainer) |
| 116 | { | 116 | { |
| 117 | - auto types = DynamicCast<FuncTy*>(funcDecl.GetTy()); | 117 | + auto types = DynamicCast<FuncTy*>(funcDecl.GetTy().get()); |
| 118 | if (!types) { | 118 | if (!types) { |
| 119 | return; | 119 | return; |
| 120 | } | 120 | } |
| @@ -371,4 +371,4 @@ void StructuralRuleGDCL01::MatchPattern(ASTContext& ctx, Ptr<Node> node) | |||
| 371 | // check Generic param shadow | 371 | // check Generic param shadow |
| 372 | FindGenericShadowNode(node); | 372 | FindGenericShadowNode(node); |
| 373 | } | 373 | } |
| 374 | -} // namespace Cangjie::CodeCheck | 374 | +} // namespace Cangjie::CodeCheck |
| @@ -23,19 +23,21 @@ bool StructuralRuleGENU02::CheckTyEqualityHelper(Cangjie::AST::Ty* base, Cangjie | |||
| 23 | auto classDecl = static_cast<Cangjie::AST::ClassLikeDecl*>(Cangjie::AST::Ty::GetDeclOfTy(derived).get()); | 23 | auto classDecl = static_cast<Cangjie::AST::ClassLikeDecl*>(Cangjie::AST::Ty::GetDeclOfTy(derived).get()); |
| 24 | // Explicit Inheritance When Class Is Declared | 24 | // Explicit Inheritance When Class Is Declared |
| 25 | for (auto& super : classDecl->inheritedTypes) { | 25 | for (auto& super : classDecl->inheritedTypes) { |
| 26 | - if (super->GetTy() == base) { | 26 | + auto superTy = super->GetTy().get(); |
| 27 | + if (superTy == base) { | ||
| 27 | return true; | 28 | return true; |
| 28 | } | 29 | } |
| 29 | - if (CheckTyEqualityHelper(base, super->GetTy())) { | 30 | + if (superTy != nullptr && CheckTyEqualityHelper(base, superTy)) { |
| 30 | return true; | 31 | return true; |
| 31 | } | 32 | } |
| 32 | } | 33 | } |
| 33 | // Inheritance relationship defined by extension | 34 | // Inheritance relationship defined by extension |
| 34 | for (auto& super : inheritedClassMap[derived]) { | 35 | for (auto& super : inheritedClassMap[derived]) { |
| 35 | - if (super->GetTy() == base) { | 36 | + auto superTy = super->GetTy().get(); |
| 37 | + if (superTy == base) { | ||
| 36 | return true; | 38 | return true; |
| 37 | } | 39 | } |
| 38 | - if (CheckTyEqualityHelper(base, super->GetTy())) { | 40 | + if (superTy != nullptr && CheckTyEqualityHelper(base, superTy)) { |
| 39 | return true; | 41 | return true; |
| 40 | } | 42 | } |
| 41 | } | 43 | } |
| @@ -66,7 +68,7 @@ void StructuralRuleGENU02::DuplicatedEnumCtrOrFuncHelper(const Cangjie::AST::Fun | |||
| 66 | auto& params = funcDecl.funcBody->paramLists[0]->params; | 68 | auto& params = funcDecl.funcBody->paramLists[0]->params; |
| 67 | std::vector<AST::Ty*> args; | 69 | std::vector<AST::Ty*> args; |
| 68 | for (size_t i = 0; i < params.size(); i++) { | 70 | for (size_t i = 0; i < params.size(); i++) { |
| 69 | - args.emplace_back(params[i]->GetTy()); | 71 | + args.emplace_back(params[i]->GetTy().get()); |
| 70 | } | 72 | } |
| 71 | auto isEnumCtr = funcDecl.TestAttr(Attribute::ENUM_CONSTRUCTOR); | 73 | auto isEnumCtr = funcDecl.TestAttr(Attribute::ENUM_CONSTRUCTOR); |
| 72 | auto enumCtr = EnumCtr(funcDecl.identifier, args, isEnumCtr); | 74 | auto enumCtr = EnumCtr(funcDecl.identifier, args, isEnumCtr); |
| @@ -135,9 +137,10 @@ void StructuralRuleGENU02::FindExtendHelper(Ptr<Cangjie::AST::Node> node) | |||
| 135 | Walker walker(node, [this](Ptr<Node> node) -> VisitAction { | 137 | Walker walker(node, [this](Ptr<Node> node) -> VisitAction { |
| 136 | return match(*node)( | 138 | return match(*node)( |
| 137 | [this](const ExtendDecl& extendDecl) { | 139 | [this](const ExtendDecl& extendDecl) { |
| 138 | - if (extendDecl.extendedType->GetTy()->IsClassLike()) { | 140 | + auto extendedTy = extendDecl.extendedType->GetTy().get(); |
| 141 | + if (extendedTy != nullptr && extendedTy->IsClassLike()) { | ||
| 139 | for (auto& type : extendDecl.inheritedTypes) { | 142 | for (auto& type : extendDecl.inheritedTypes) { |
| 140 | - inheritedClassMap[extendDecl.extendedType->GetTy()].emplace_back(type.get()); | 143 | + inheritedClassMap[extendedTy].emplace_back(type.get()); |
| 141 | } | 144 | } |
| 142 | } | 145 | } |
| 143 | return VisitAction::SKIP_CHILDREN; | 146 | return VisitAction::SKIP_CHILDREN; |
| @@ -80,7 +80,7 @@ static bool IsIrrefutablePattern(const Pattern &pattern) | |||
| 80 | // For Enum mode, determine if it is an IrrefutablePattern | 80 | // For Enum mode, determine if it is an IrrefutablePattern |
| 81 | if (varOrEnumPattern->pattern && varOrEnumPattern->pattern->GetTy()) { | 81 | if (varOrEnumPattern->pattern && varOrEnumPattern->pattern->GetTy()) { |
| 82 | auto &enumPattern = static_cast<const EnumPattern &>(*varOrEnumPattern->pattern); | 82 | auto &enumPattern = static_cast<const EnumPattern &>(*varOrEnumPattern->pattern); |
| 83 | - auto enumTy = RawStaticCast<EnumTy *>(varOrEnumPattern->pattern->GetTy()); | 83 | + auto enumTy = RawStaticCast<EnumTy *>(varOrEnumPattern->pattern->GetTy().get()); |
| 84 | return enumTy && enumTy->declPtr && enumTy->declPtr->constructors.size() == 1 && | 84 | return enumTy && enumTy->declPtr && enumTy->declPtr->constructors.size() == 1 && |
| 85 | std::all_of(enumPattern.patterns.cbegin(), enumPattern.patterns.cend(), | 85 | std::all_of(enumPattern.patterns.cbegin(), enumPattern.patterns.cend(), |
| 86 | [](const OwnedPtr<Pattern> &p) { return IsIrrefutablePattern(*p); }); | 86 | [](const OwnedPtr<Pattern> &p) { return IsIrrefutablePattern(*p); }); |
| @@ -92,7 +92,7 @@ static bool IsIrrefutablePattern(const Pattern &pattern) | |||
| 92 | return false; | 92 | return false; |
| 93 | } | 93 | } |
| 94 | auto &enumPattern = static_cast<const EnumPattern &>(pattern); | 94 | auto &enumPattern = static_cast<const EnumPattern &>(pattern); |
| 95 | - auto enumTy = RawStaticCast<EnumTy *>(pattern.GetTy()); | 95 | + auto enumTy = RawStaticCast<EnumTy *>(pattern.GetTy().get()); |
| 96 | return enumTy && enumTy->declPtr && enumTy->declPtr->constructors.size() == 1 && | 96 | return enumTy && enumTy->declPtr && enumTy->declPtr->constructors.size() == 1 && |
| 97 | std::all_of(enumPattern.patterns.cbegin(), enumPattern.patterns.cend(), | 97 | std::all_of(enumPattern.patterns.cbegin(), enumPattern.patterns.cend(), |
| 98 | [](const OwnedPtr<Pattern> &p) { return IsIrrefutablePattern(*p); }); | 98 | [](const OwnedPtr<Pattern> &p) { return IsIrrefutablePattern(*p); }); |
| @@ -135,4 +135,4 @@ void StructuralRuleGEXP01::MatchPattern(ASTContext &ctx, Ptr<Node> node) | |||
| 135 | (void)ctx; | 135 | (void)ctx; |
| 136 | FindMatchExpr(node); | 136 | FindMatchExpr(node); |
| 137 | } | 137 | } |
| 138 | -} // namespace Cangjie::CodeCheck | 138 | +} // namespace Cangjie::CodeCheck |
| @@ -14,6 +14,9 @@ using namespace Meta; | |||
| 14 | 14 | ||
| 15 | static bool IsSubClass(Ptr<AST::Ty> base, Ptr<AST::Ty> derived) | 15 | static bool IsSubClass(Ptr<AST::Ty> base, Ptr<AST::Ty> derived) |
| 16 | { | 16 | { |
| 17 | + if (!base || !derived) { | ||
| 18 | + return false; | ||
| 19 | + } | ||
| 17 | if (!derived->IsClassLike()) { | 20 | if (!derived->IsClassLike()) { |
| 18 | return false; | 21 | return false; |
| 19 | } | 22 | } |
| @@ -22,13 +25,23 @@ static bool IsSubClass(Ptr<AST::Ty> base, Ptr<AST::Ty> derived) | |||
| 22 | } | 25 | } |
| 23 | auto classDecl = StaticCast<AST::ClassLikeDecl*>(AST::Ty::GetDeclOfTy(derived).get()); | 26 | auto classDecl = StaticCast<AST::ClassLikeDecl*>(AST::Ty::GetDeclOfTy(derived).get()); |
| 24 | for (auto& super : classDecl->inheritedTypes) { | 27 | for (auto& super : classDecl->inheritedTypes) { |
| 25 | - if (IsSubClass(base, super->GetTy())) { | 28 | + if (IsSubClass(base, super->GetTy().Ty())) { |
| 26 | return true; | 29 | return true; |
| 27 | } | 30 | } |
| 28 | } | 31 | } |
| 29 | return false; | 32 | return false; |
| 30 | } | 33 | } |
| 31 | 34 | ||
| 35 | +static std::vector<Ptr<AST::Ty>> GetDataTys(const std::vector<AST::ModalTy>& modalTys) | ||
| 36 | +{ | ||
| 37 | + std::vector<Ptr<AST::Ty>> dataTys; | ||
| 38 | + dataTys.reserve(modalTys.size()); | ||
| 39 | + for (auto& modalTy : modalTys) { | ||
| 40 | + dataTys.emplace_back(modalTy.Ty()); | ||
| 41 | + } | ||
| 42 | + return dataTys; | ||
| 43 | +} | ||
| 44 | + | ||
| 32 | static bool IsNotSameParams(std::vector<Ptr<AST::Ty>>& current, std::vector<Ptr<AST::Ty>>& target) | 45 | static bool IsNotSameParams(std::vector<Ptr<AST::Ty>>& current, std::vector<Ptr<AST::Ty>>& target) |
| 33 | { | 46 | { |
| 34 | if (current.size() != target.size()) { | 47 | if (current.size() != target.size()) { |
| @@ -58,9 +71,9 @@ static bool HasParentChildTypeRelation(std::vector<Ptr<AST::Ty>>& current, std:: | |||
| 58 | void StructuralRuleGFUNC03::FuncDeclProcessor(Ptr<Node> node) | 71 | void StructuralRuleGFUNC03::FuncDeclProcessor(Ptr<Node> node) |
| 59 | { | 72 | { |
| 60 | auto funcDecl = StaticCast<AST::FuncDecl*>(node); | 73 | auto funcDecl = StaticCast<AST::FuncDecl*>(node); |
| 61 | - auto functy = DynamicCast<AST::FuncTy*>(funcDecl->GetTy()); | 74 | + auto functy = DynamicCast<AST::FuncTy*>(funcDecl->GetTy().get()); |
| 62 | if (functy) { | 75 | if (functy) { |
| 63 | - auto paramTys = functy->paramTys; | 76 | + auto paramTys = GetDataTys(functy->paramTys); |
| 64 | for (auto modifier : funcDecl->modifiers) { | 77 | for (auto modifier : funcDecl->modifiers) { |
| 65 | if (modifier.modifier== TokenKind::COMMON || modifier.modifier == TokenKind::SPECIFIC) { | 78 | if (modifier.modifier== TokenKind::COMMON || modifier.modifier == TokenKind::SPECIFIC) { |
| 66 | return; | 79 | return; |
| @@ -92,11 +105,11 @@ void StructuralRuleGFUNC03::FileProcessor(Ptr<Node> node) | |||
| 92 | continue; | 105 | continue; |
| 93 | } | 106 | } |
| 94 | auto funcDecl = StaticCast<AST::FuncDecl*>(decl.get()); | 107 | auto funcDecl = StaticCast<AST::FuncDecl*>(decl.get()); |
| 95 | - auto functy = DynamicCast<AST::FuncTy*>(funcDecl->GetTy()); | 108 | + auto functy = DynamicCast<AST::FuncTy*>(funcDecl->GetTy().get()); |
| 96 | if (!functy) { | 109 | if (!functy) { |
| 97 | continue; | 110 | continue; |
| 98 | } | 111 | } |
| 99 | - auto paramTys = functy->paramTys; | 112 | + auto paramTys = GetDataTys(functy->paramTys); |
| 100 | for (auto modifier : funcDecl->modifiers) { | 113 | for (auto modifier : funcDecl->modifiers) { |
| 101 | if (modifier.modifier== TokenKind::COMMON || modifier.modifier == TokenKind::SPECIFIC) { | 114 | if (modifier.modifier== TokenKind::COMMON || modifier.modifier == TokenKind::SPECIFIC) { |
| 102 | return; | 115 | return; |
| @@ -173,4 +186,4 @@ void StructuralRuleGFUNC03::MatchPattern(ASTContext& ctx, Ptr<Node> node) | |||
| 173 | (void)ctx; | 186 | (void)ctx; |
| 174 | CheckFuncOverload(node); | 187 | CheckFuncOverload(node); |
| 175 | } | 188 | } |
| 176 | -} // namespace Cangjie::CodeCheck | 189 | +} // namespace Cangjie::CodeCheck |
| @@ -34,7 +34,8 @@ void StructuralRuleGITF02::CheckExtendMemberDecls(const Cangjie::AST::ExtendDecl | |||
| 34 | for (auto& member : extendDecl.members) { | 34 | for (auto& member : extendDecl.members) { |
| 35 | bool label = false; | 35 | bool label = false; |
| 36 | for (auto& interfaceTy : extendDecl.GetSuperInterfaceTys()) { | 36 | for (auto& interfaceTy : extendDecl.GetSuperInterfaceTys()) { |
| 37 | - auto interface = RawStaticCast<AST::InterfaceDecl*>(AST::Ty::GetDeclOfTy(interfaceTy)); | 37 | + Ptr<AST::Ty> ty = interfaceTy; |
| 38 | + auto interface = RawStaticCast<AST::InterfaceDecl*>(AST::Ty::GetDeclOfTy(ty)); | ||
| 38 | if (interface->TestAttr(Attribute::IMPORTED)) { | 39 | if (interface->TestAttr(Attribute::IMPORTED)) { |
| 39 | continue; | 40 | continue; |
| 40 | } | 41 | } |
| @@ -16,7 +16,7 @@ void StructuralRuleGITF04::CheckFuncDeclParams(const Cangjie::AST::FuncDecl &fun | |||
| 16 | return; | 16 | return; |
| 17 | } | 17 | } |
| 18 | if (funcDecl.GetTy()) { | 18 | if (funcDecl.GetTy()) { |
| 19 | - Ptr<AST::FuncTy> funcTy = DynamicCast<AST::FuncTy*>(funcDecl.GetTy()); | 19 | + Ptr<AST::FuncTy> funcTy = DynamicCast<AST::FuncTy*>(funcDecl.GetTy().get()); |
| 20 | if (funcTy && funcTy->retTy && funcTy->retTy->IsInterface()) { | 20 | if (funcTy && funcTy->retTy && funcTy->retTy->IsInterface()) { |
| 21 | Diagnose(funcDecl.begin, funcDecl.end, | 21 | Diagnose(funcDecl.begin, funcDecl.end, |
| 22 | CodeCheckDiagKind::G_ITF_04_avoid_directly_using_interfaces_as_types_02, funcDecl.identifier.Val()); | 22 | CodeCheckDiagKind::G_ITF_04_avoid_directly_using_interfaces_as_types_02, funcDecl.identifier.Val()); |
| @@ -54,4 +54,4 @@ void StructuralRuleGITF04::MatchPattern(ASTContext &ctx, Ptr<Node> node) | |||
| 54 | (void)ctx; | 54 | (void)ctx; |
| 55 | FindFuncDecl(node); | 55 | FindFuncDecl(node); |
| 56 | } | 56 | } |
| 57 | -} | 57 | +} |
| @@ -43,7 +43,7 @@ bool StructuralRuleGNAM03::IsExceptionSubclass(const ClassDecl &classDecl, std:: | |||
| 43 | return true; | 43 | return true; |
| 44 | } | 44 | } |
| 45 | if (it->GetTy() && it->GetTy()->kind == TypeKind::TYPE_CLASS) { | 45 | if (it->GetTy() && it->GetTy()->kind == TypeKind::TYPE_CLASS) { |
| 46 | - Ptr<ClassDecl> claDecl = StaticCast<ClassTy>(it->GetTy())->decl; | 46 | + Ptr<ClassDecl> claDecl = StaticCast<ClassTy*>(it->GetTy().get())->decl; |
| 47 | if (declSet.count(claDecl) > 0) { | 47 | if (declSet.count(claDecl) > 0) { |
| 48 | continue; | 48 | continue; |
| 49 | } | 49 | } |
| @@ -91,7 +91,7 @@ void StructuralRuleGOTH04::AnalyzeVarDecl(const VarDecl& varDecl) | |||
| 91 | } | 91 | } |
| 92 | 92 | ||
| 93 | bool flag = false; | 93 | bool flag = false; |
| 94 | - VarDeclTypeAnalysis(varDecl.GetTy(), flag); | 94 | + VarDeclTypeAnalysis(varDecl.GetTy().Ty(), flag); |
| 95 | if (flag) { | 95 | if (flag) { |
| 96 | Diagnose(varDecl.identifier.Begin(), varDecl.identifier.End(), | 96 | Diagnose(varDecl.identifier.Begin(), varDecl.identifier.End(), |
| 97 | CodeCheckDiagKind::G_OTH_04_avoid_use_string_type_to_store_sensitive_data, varDecl.identifier.Val()); | 97 | CodeCheckDiagKind::G_OTH_04_avoid_use_string_type_to_store_sensitive_data, varDecl.identifier.Val()); |
| @@ -134,7 +134,7 @@ void StructuralRuleGOTH04::IsIncludeStringType(Ptr<Ty> ty, bool& flag) | |||
| 134 | flag = true; | 134 | flag = true; |
| 135 | break; | 135 | break; |
| 136 | } | 136 | } |
| 137 | - VarDeclTypeAnalysis(item, flag); | 137 | + VarDeclTypeAnalysis(item.Ty(), flag); |
| 138 | } | 138 | } |
| 139 | } | 139 | } |
| 140 | -} // namespace Cangjie::CodeCheck | 140 | +} // namespace Cangjie::CodeCheck |
| @@ -32,7 +32,7 @@ protected: | |||
| 32 | return true; | 32 | return true; |
| 33 | } | 33 | } |
| 34 | if (it->GetTy() && it->GetTy()->kind == AST::TypeKind::TYPE_CLASS) { | 34 | if (it->GetTy() && it->GetTy()->kind == AST::TypeKind::TYPE_CLASS) { |
| 35 | - auto classDecl = StaticCast<AST::ClassTy>(it->GetTy())->decl; | 35 | + auto classDecl = StaticCast<AST::ClassTy*>(it->GetTy().get())->decl; |
| 36 | if (declSet.count(classDecl) > 0) { | 36 | if (declSet.count(classDecl) > 0) { |
| 37 | continue; | 37 | continue; |
| 38 | } | 38 | } |
| @@ -42,7 +42,7 @@ protected: | |||
| 42 | } | 42 | } |
| 43 | } | 43 | } |
| 44 | if (it->GetTy() && it->GetTy()->kind == AST::TypeKind::TYPE_INTERFACE) { | 44 | if (it->GetTy() && it->GetTy()->kind == AST::TypeKind::TYPE_INTERFACE) { |
| 45 | - auto interfaceDecl = StaticCast<AST::InterfaceTy>(it->GetTy())->decl; | 45 | + auto interfaceDecl = StaticCast<AST::InterfaceTy*>(it->GetTy().get())->decl; |
| 46 | if (declSet.count(interfaceDecl) > 0) { | 46 | if (declSet.count(interfaceDecl) > 0) { |
| 47 | continue; | 47 | continue; |
| 48 | } | 48 | } |
| @@ -5,6 +5,7 @@ | |||
| 5 | // See https://cangjie-lang.cn/pages/LICENSE for license information. | 5 | // See https://cangjie-lang.cn/pages/LICENSE for license information. |
| 6 | 6 | ||
| 7 | 7 | ||
| 8 | +#include <limits> | ||
| 8 | #ifdef BUILD_LIB_CANGJIE_DEMANGLE // to reuse the code to compile CangjieDemangle.cpp | 9 | #ifdef BUILD_LIB_CANGJIE_DEMANGLE // to reuse the code to compile CangjieDemangle.cpp |
| 9 | #include <cstring> | 10 | #include <cstring> |
| 10 | #include <string> | 11 | #include <string> |
| @@ -26,6 +27,8 @@ constexpr char MANGLE_CSTRING_PREFIX = 'k'; | |||
| 26 | constexpr char MANGLE_VOID_PREFIX = 'v'; | 27 | constexpr char MANGLE_VOID_PREFIX = 'v'; |
| 27 | constexpr char MANGLE_GTY_PREFIX = 'G'; | 28 | constexpr char MANGLE_GTY_PREFIX = 'G'; |
| 28 | constexpr char MANGLE_DEFAULT_PARAM_FUNCTION_PREFIX = '$'; | 29 | constexpr char MANGLE_DEFAULT_PARAM_FUNCTION_PREFIX = '$'; |
| 30 | +constexpr char MANGLE_TYPE_MODE_PREFIX = 'Q'; | ||
| 31 | +constexpr char MANGLE_THIS_MODE_PREFIX = 'W'; | ||
| 29 | const char ARGS_DELIMITER[] = ", "; | 32 | const char ARGS_DELIMITER[] = ", "; |
| 30 | const char ARGS_DELIMITER_TYPE[] = ","; | 33 | const char ARGS_DELIMITER_TYPE[] = ","; |
| 31 | const char LEFT_BRACKET[] = "("; | 34 | const char LEFT_BRACKET[] = "("; |
| @@ -183,9 +186,9 @@ T ReplaceString(T str, const char* pattern, const char* replacement) | |||
| 183 | auto pos = str.Find(pattern); | 186 | auto pos = str.Find(pattern); |
| 184 | auto n = str.Length(); | 187 | auto n = str.Length(); |
| 185 | auto pLen = strlen(pattern); | 188 | auto pLen = strlen(pattern); |
| 186 | - while (pos > -1 && n - pos - pLen > 0) { | 189 | + while (pos > -1 && n - static_cast<size_t>(pos) - pLen > 0) { |
| 187 | n = str.Length(); | 190 | n = str.Length(); |
| 188 | - str = str.SubStr(0, pos) + replacement + str.SubStr(pos + pLen, n - pos - pLen); | 191 | + str = str.SubStr(0, pos) + replacement + str.SubStr(pos + pLen, n - static_cast<size_t>(pos) - pLen); |
| 189 | pos = str.Find(pattern); | 192 | pos = str.Find(pattern); |
| 190 | } | 193 | } |
| 191 | return str; | 194 | return str; |
| @@ -212,6 +215,11 @@ inline bool IsFunction(char ch) | |||
| 212 | return ch == MANGLE_FUNCTION_PREFIX; | 215 | return ch == MANGLE_FUNCTION_PREFIX; |
| 213 | } | 216 | } |
| 214 | 217 | ||
| 218 | +inline bool IsModeLeaderChar(char ch) | ||
| 219 | +{ | ||
| 220 | + return ch == MANGLE_TYPE_MODE_PREFIX || ch == MANGLE_THIS_MODE_PREFIX; | ||
| 221 | +} | ||
| 222 | + | ||
| 215 | template<typename T> | 223 | template<typename T> |
| 216 | bool Demangler<T>::IsProp() const | 224 | bool Demangler<T>::IsProp() const |
| 217 | { | 225 | { |
| @@ -318,7 +326,7 @@ bool Demangler<T>::IsCFunctionWrapper() const | |||
| 318 | } | 326 | } |
| 319 | 327 | ||
| 320 | template<typename T> | 328 | template<typename T> |
| 321 | -bool Demangler<T>::IsWrappedFunction() const | 329 | +bool Demangler<T>::IsWrappedFunction() const |
| 322 | { | 330 | { |
| 323 | return mangledName.Find(MANGLE_WRAPPED_FUNCTION_PREFIX, 0) == 0; | 331 | return mangledName.Find(MANGLE_WRAPPED_FUNCTION_PREFIX, 0) == 0; |
| 324 | } | 332 | } |
| @@ -355,7 +363,7 @@ bool Demangler<T>::IsDecl() const | |||
| 355 | } | 363 | } |
| 356 | 364 | ||
| 357 | template<typename T> | 365 | template<typename T> |
| 358 | -void Demangler<T>::ErrorLog(const char* msg) const | 366 | +void Demangler<T>::ErrorLog([[maybe_unused]] const char* msg) const |
| 359 | { | 367 | { |
| 360 | #if defined(MRT_DEBUG) && (MRT_DEBUG == 1) && !defined(BUILD_LIB_CANGJIE_DEMANGLE) | 368 | #if defined(MRT_DEBUG) && (MRT_DEBUG == 1) && !defined(BUILD_LIB_CANGJIE_DEMANGLE) |
| 361 | PRINT_ERROR("'%s' is not a valid mangling name.\n ", mangledName.Str()); | 369 | PRINT_ERROR("'%s' is not a valid mangling name.\n ", mangledName.Str()); |
| @@ -368,7 +376,7 @@ void Demangler<T>::ErrorLog(const char* msg) const | |||
| 368 | } | 376 | } |
| 369 | 377 | ||
| 370 | template<typename T> | 378 | template<typename T> |
| 371 | -bool Demangler<T>::MatchForward(const char pattern[], uint32_t len) const | 379 | +bool Demangler<T>::MatchForward(const char pattern[], size_t len) const |
| 372 | { | 380 | { |
| 373 | auto maxLen = mangledName.Length() - currentIndex; | 381 | auto maxLen = mangledName.Length() - currentIndex; |
| 374 | len = len > maxLen ? maxLen : len; | 382 | len = len > maxLen ? maxLen : len; |
| @@ -425,6 +433,65 @@ void Demangler<T>::SkipOptionalChar(char ch) | |||
| 425 | return; | 433 | return; |
| 426 | } | 434 | } |
| 427 | 435 | ||
| 436 | +template <typename T> bool Demangler<T>::IsModeLeader() const | ||
| 437 | +{ | ||
| 438 | + if (currentIndex >= mangledName.Length()) { | ||
| 439 | + return false; | ||
| 440 | + } | ||
| 441 | + return IsModeLeaderChar(mangledName[currentIndex]); | ||
| 442 | +} | ||
| 443 | + | ||
| 444 | +template <typename T> bool Demangler<T>::IsThisMode() const | ||
| 445 | +{ | ||
| 446 | + if (currentIndex >= mangledName.Length()) { | ||
| 447 | + return false; | ||
| 448 | + } | ||
| 449 | + return mangledName[currentIndex] == MANGLE_THIS_MODE_PREFIX; | ||
| 450 | +} | ||
| 451 | + | ||
| 452 | +// <mode-set> ::= Q<payload>E | W<payload>E | ||
| 453 | +// <payload> ::= <axis-degree>+E, <axis-degree> ::= L|l | ||
| 454 | +// (uppercase letter = FULL/!, lowercase = HALF/?; fixed axis order local -> future axes) | ||
| 455 | +template <typename T> T Demangler<T>::DemangleModeSet() | ||
| 456 | +{ | ||
| 457 | + T result; | ||
| 458 | + if (!IsModeLeader()) { | ||
| 459 | + return T{}; | ||
| 460 | + } | ||
| 461 | + result += T{" @"}; | ||
| 462 | + ++currentIndex; // Skip the leader (Q or W). | ||
| 463 | + while (currentIndex < mangledName.Length()) { | ||
| 464 | + char ch = mangledName[currentIndex]; | ||
| 465 | + if (ch == END) { | ||
| 466 | + ++currentIndex; // Payload terminator E. | ||
| 467 | + return result; | ||
| 468 | + } | ||
| 469 | + // Each non-default axis contributes one demangled modal word. | ||
| 470 | + switch (ch) { | ||
| 471 | + case 'L': | ||
| 472 | + result += T{" local!"}; | ||
| 473 | + ++currentIndex; | ||
| 474 | + break; | ||
| 475 | + case 'l': | ||
| 476 | + result += T{" local?"}; | ||
| 477 | + ++currentIndex; | ||
| 478 | + break; | ||
| 479 | + default: | ||
| 480 | + (void)Reject(T{"invalid modal encoding"}); | ||
| 481 | + return T{}; | ||
| 482 | + } | ||
| 483 | + } | ||
| 484 | + (void)Reject(T{"unterminated modal encoding"}); | ||
| 485 | + return T{}; | ||
| 486 | +} | ||
| 487 | + | ||
| 488 | +template <typename T> void Demangler<T>::AppendModeTypeIfExists(DemangleInfo<T>& di) | ||
| 489 | +{ | ||
| 490 | + if (IsModeLeader()) { | ||
| 491 | + di.genericConstraints += DemangleModeSet(); | ||
| 492 | + } | ||
| 493 | +} | ||
| 494 | + | ||
| 428 | template<typename T> | 495 | template<typename T> |
| 429 | void Demangler<T>::SkipString(const char pattern[]) | 496 | void Demangler<T>::SkipString(const char pattern[]) |
| 430 | { | 497 | { |
| @@ -475,6 +542,9 @@ T DemangleInfo<T>::GetFullName(const T& scopeRes, const uint32_t argsNum) const | |||
| 475 | } else { | 542 | } else { |
| 476 | fullDemangledName += identifier; | 543 | fullDemangledName += identifier; |
| 477 | } | 544 | } |
| 545 | + if (IsFunctionLike() && type == TypeKind::FUNCTION_DECL && demangled.Find('(') != -1) { | ||
| 546 | + return fullDemangledName; | ||
| 547 | + } | ||
| 478 | fullDemangledName += GetGenericTypes(); | 548 | fullDemangledName += GetGenericTypes(); |
| 479 | fullDemangledName += GetArgTypesName(argsNum); | 549 | fullDemangledName += GetArgTypesName(argsNum); |
| 480 | fullDemangledName += GetGenericConstraints(); | 550 | fullDemangledName += GetGenericConstraints(); |
| @@ -533,10 +603,13 @@ template<typename T> | |||
| 533 | T DemangleInfo<T>::GetArgTypesName(const uint32_t argsNum) const | 603 | T DemangleInfo<T>::GetArgTypesName(const uint32_t argsNum) const |
| 534 | { | 604 | { |
| 535 | if (args.IsEmpty()) { | 605 | if (args.IsEmpty()) { |
| 606 | + if (type == TypeKind::FUNCTION_DECL && IsFunctionLike() && !functionParameterTypes.IsEmpty()) { | ||
| 607 | + return T{ LEFT_BRACKET } + functionParameterTypes + RIGHT_BRACKET; | ||
| 608 | + } | ||
| 536 | return IsFunctionLike() ? "()" : T{}; | 609 | return IsFunctionLike() ? "()" : T{}; |
| 537 | } | 610 | } |
| 538 | if (IsFunctionLike()) { | 611 | if (IsFunctionLike()) { |
| 539 | - return T{ "(" } + args + ")"; // Like (arg-type1, arg-type2, ...) | 612 | + return T{ LEFT_BRACKET } + args + RIGHT_BRACKET; // Like (arg-type1, arg-type2, ...) |
| 540 | } | 613 | } |
| 541 | if (argsNum != 0) { | 614 | if (argsNum != 0) { |
| 542 | T numStr; | 615 | T numStr; |
| @@ -554,7 +627,8 @@ T DemangleInfo<T>::GetArgTypesName(const uint32_t argsNum) const | |||
| 554 | template<typename T> | 627 | template<typename T> |
| 555 | bool DemangleInfo<T>::IsFunctionLike() const | 628 | bool DemangleInfo<T>::IsFunctionLike() const |
| 556 | { | 629 | { |
| 557 | - return type == TypeKind::FUNCTION_DECL || type == TypeKind::LAMBDA_FUNCTION || type == TypeKind::FUNCTION || type == TypeKind::WRAPPED_FUNCTION; | 630 | + return type == TypeKind::FUNCTION_DECL || type == TypeKind::LAMBDA_FUNCTION || |
| 631 | + type == TypeKind::FUNCTION || type == TypeKind::WRAPPED_FUNCTION; | ||
| 558 | } | 632 | } |
| 559 | 633 | ||
| 560 | template<typename T> | 634 | template<typename T> |
| @@ -682,7 +756,7 @@ DemangleInfo<T> Demangler<T>::Demangle(bool isType) | |||
| 682 | TypeKind::NAME, isValid }; | 756 | TypeKind::NAME, isValid }; |
| 683 | } | 757 | } |
| 684 | // Wrapped func like ""_CVN7default1S4testHv$N7default1SE$CN7default1IE"" | 758 | // Wrapped func like ""_CVN7default1S4testHv$N7default1SE$CN7default1IE"" |
| 685 | - if(IsWrappedFunction()) { | 759 | + if (IsWrappedFunction()) { |
| 686 | return DemangleWrappedFunction(); | 760 | return DemangleWrappedFunction(); |
| 687 | } | 761 | } |
| 688 | return DemangleDecl(); | 762 | return DemangleDecl(); |
| @@ -716,8 +790,8 @@ DemangleInfo<T> Demangler<T>::DemanglePackageName() | |||
| 716 | if (pkg.IsEmpty()) { | 790 | if (pkg.IsEmpty()) { |
| 717 | pkg = DemangleStringName(); | 791 | pkg = DemangleStringName(); |
| 718 | auto pos = pkg.Find(':'); | 792 | auto pos = pkg.Find(':'); |
| 719 | - if (pos > -1 && pkg.Length() - pos > 0) { | 793 | + if (pos > -1 && pkg.Length() - static_cast<size_t>(pos) > 1) { |
| 720 | - pkg = pkg.SubStr(0, pos) + T{':'} + pkg.SubStr(pos, pkg.Length() - pos); | 794 | + pkg = pkg.SubStr(0, pos) + T{':'} + pkg.SubStr(pos, pkg.Length() - static_cast<size_t>(pos)); |
| 721 | } | 795 | } |
| 722 | } | 796 | } |
| 723 | if (IsFileName()) { | 797 | if (IsFileName()) { |
| @@ -944,6 +1018,7 @@ T Demangler<T>::DemangleArgTypes(const T& delimiter, uint32_t size) | |||
| 944 | if (!isValid) { | 1018 | if (!isValid) { |
| 945 | return T{}; | 1019 | return T{}; |
| 946 | } | 1020 | } |
| 1021 | + AppendModeTypeIfExists(curDi); | ||
| 947 | auto j = i % MAX_ARGS_SIZE; | 1022 | auto j = i % MAX_ARGS_SIZE; |
| 948 | if (j == 0 && i != 0) { | 1023 | if (j == 0 && i != 0) { |
| 949 | for (auto& arg : argsArr) { | 1024 | for (auto& arg : argsArr) { |
| @@ -969,6 +1044,7 @@ T Demangler<T>::DemangleArgTypes(const T& delimiter, uint32_t size) | |||
| 969 | template<typename T> | 1044 | template<typename T> |
| 970 | DemangleInfo<T> Demangler<T>::DemangleNestedDecls(bool isClass, bool isParamInit) | 1045 | DemangleInfo<T> Demangler<T>::DemangleNestedDecls(bool isClass, bool isParamInit) |
| 971 | { | 1046 | { |
| 1047 | + (void)isParamInit; | ||
| 972 | auto delimiter = T{ scopeResolution }; | 1048 | auto delimiter = T{ scopeResolution }; |
| 973 | auto i = 0u; | 1049 | auto i = 0u; |
| 974 | T result; | 1050 | T result; |
| @@ -1037,11 +1113,18 @@ DemangleInfo<T> Demangler<T>::DemangleNestedDecls(bool isClass, bool isParamInit | |||
| 1037 | } | 1113 | } |
| 1038 | char ch; | 1114 | char ch; |
| 1039 | if (PeekChar(ch) && IsFunction(ch)) { | 1115 | if (PeekChar(ch) && IsFunction(ch)) { |
| 1116 | + // <function-name>[<generic-modifier>]H[<this-mode>]<param-types> | ||
| 1040 | SkipChar(MANGLE_FUNCTION_PREFIX); | 1117 | SkipChar(MANGLE_FUNCTION_PREFIX); |
| 1041 | typeKind = TypeKind::FUNCTION_DECL; | 1118 | typeKind = TypeKind::FUNCTION_DECL; |
| 1119 | + // <this-mode> (W<payload>E right after H) is consumed inside | ||
| 1120 | + // DemangleFunctionParameterTypes and folded into the leading "this ..." argument. | ||
| 1042 | auto funcTys = DemangleFunctionParameterTypes().args; | 1121 | auto funcTys = DemangleFunctionParameterTypes().args; |
| 1043 | curDi.functionParameterTypes = funcTys; | 1122 | curDi.functionParameterTypes = funcTys; |
| 1123 | + if (!funcTys.IsEmpty()) { | ||
| 1124 | + curDi.type = TypeKind::FUNCTION_DECL; | ||
| 1125 | + } | ||
| 1044 | SkipOptionalChar(END); | 1126 | SkipOptionalChar(END); |
| 1127 | + AppendModeTypeIfExists(curDi); | ||
| 1045 | } | 1128 | } |
| 1046 | auto j = i % MAX_ARGS_SIZE; | 1129 | auto j = i % MAX_ARGS_SIZE; |
| 1047 | if (j == 0 && i != 0) { | 1130 | if (j == 0 && i != 0) { |
| @@ -1052,15 +1135,11 @@ DemangleInfo<T> Demangler<T>::DemangleNestedDecls(bool isClass, bool isParamInit | |||
| 1052 | result.Truncate(result.Length() - delimiter.Length()); | 1135 | result.Truncate(result.Length() - delimiter.Length()); |
| 1053 | } | 1136 | } |
| 1054 | ++i; | 1137 | ++i; |
| 1055 | - if (isParamInit && IsNotEndOfMangledName() && curDi.functionParameterTypes.Length() > 0) { | 1138 | + argsArr[j] = curDi.GetFullName(scopeResolution); |
| 1056 | - argsArr[j] = curDi.GetFullName(scopeResolution) + LEFT_BRACKET + curDi.functionParameterTypes + | ||
| 1057 | - RIGHT_BRACKET; | ||
| 1058 | - } else { | ||
| 1059 | - argsArr[j] = curDi.GetFullName(scopeResolution); | ||
| 1060 | - } | ||
| 1061 | lastElement = curDi; | 1139 | lastElement = curDi; |
| 1062 | } | 1140 | } |
| 1063 | - result += GetArgTypesFullName(argsArr, i % (MAX_ARGS_SIZE + 1), delimiter); | 1141 | + uint32_t remainingLength = i == 0 ? 0 : ((i - 1) % MAX_ARGS_SIZE) + 1; |
| 1142 | + result += GetArgTypesFullName(argsArr, remainingLength, delimiter); | ||
| 1064 | DemangleInfo<T> resDi = { result, typeKind, isValid }; | 1143 | DemangleInfo<T> resDi = { result, typeKind, isValid }; |
| 1065 | resDi.functionParameterTypes = lastElement.functionParameterTypes; | 1144 | resDi.functionParameterTypes = lastElement.functionParameterTypes; |
| 1066 | return resDi; | 1145 | return resDi; |
| @@ -1072,10 +1151,14 @@ DemangleInfo<T> Demangler<T>::DemangleClass(TypeKind typeKind) | |||
| 1072 | ++currentIndex; // Skip one character representing the typeKind | 1151 | ++currentIndex; // Skip one character representing the typeKind |
| 1073 | auto di = DemangleCommonDecl(true); | 1152 | auto di = DemangleCommonDecl(true); |
| 1074 | di.type = typeKind; | 1153 | di.type = typeKind; |
| 1154 | + // The class/struct/enum body ends with its own 'E'; the <type-mode> (Q<payload>E) follows it. | ||
| 1155 | + // Consume the 'E' first so the mode-set is parsed here — otherwise it would be dropped by | ||
| 1156 | + // callers that stop at 'E' (e.g. DemangleType / generic-argument parsing). | ||
| 1075 | char ch; | 1157 | char ch; |
| 1076 | if (PeekChar(ch) && ch == END) { | 1158 | if (PeekChar(ch) && ch == END) { |
| 1077 | SkipChar(END); | 1159 | SkipChar(END); |
| 1078 | } | 1160 | } |
| 1161 | + AppendModeTypeIfExists(di); | ||
| 1079 | return di; | 1162 | return di; |
| 1080 | } | 1163 | } |
| 1081 | 1164 | ||
| @@ -1083,9 +1166,12 @@ template<typename T> | |||
| 1083 | DemangleInfo<T> Demangler<T>::DemangleCFuncType() | 1166 | DemangleInfo<T> Demangler<T>::DemangleCFuncType() |
| 1084 | { | 1167 | { |
| 1085 | SkipString(MANGLE_C_FUNCTY_PREFIX); | 1168 | SkipString(MANGLE_C_FUNCTY_PREFIX); |
| 1086 | - DemangleInfo<T> di{ DemangleNextUnit().GetFullName(scopeResolution), TypeKind::FUNCTION }; | 1169 | + auto returnDi = DemangleNextUnit(); |
| 1170 | + AppendModeTypeIfExists(returnDi); | ||
| 1171 | + DemangleInfo<T> di{ returnDi.GetFullName(scopeResolution), TypeKind::FUNCTION }; | ||
| 1087 | di.args = DemangleArgTypes(ARGS_DELIMITER); | 1172 | di.args = DemangleArgTypes(ARGS_DELIMITER); |
| 1088 | SkipChar(END); | 1173 | SkipChar(END); |
| 1174 | + AppendModeTypeIfExists(di); | ||
| 1089 | return di; | 1175 | return di; |
| 1090 | } | 1176 | } |
| 1091 | 1177 | ||
| @@ -1093,9 +1179,12 @@ template<typename T> | |||
| 1093 | DemangleInfo<T> Demangler<T>::DemangleFunction() | 1179 | DemangleInfo<T> Demangler<T>::DemangleFunction() |
| 1094 | { | 1180 | { |
| 1095 | SkipString(MANGLE_FUNCTY_PREFIX); | 1181 | SkipString(MANGLE_FUNCTY_PREFIX); |
| 1096 | - DemangleInfo<T> di{ DemangleNextUnit().GetFullName(scopeResolution), TypeKind::FUNCTION }; | 1182 | + auto returnDi = DemangleNextUnit(); |
| 1183 | + AppendModeTypeIfExists(returnDi); | ||
| 1184 | + DemangleInfo<T> di{ returnDi.GetFullName(scopeResolution), TypeKind::FUNCTION }; | ||
| 1097 | di.args = DemangleArgTypes(ARGS_DELIMITER); | 1185 | di.args = DemangleArgTypes(ARGS_DELIMITER); |
| 1098 | SkipChar(END); | 1186 | SkipChar(END); |
| 1187 | + AppendModeTypeIfExists(di); | ||
| 1099 | return di; | 1188 | return di; |
| 1100 | } | 1189 | } |
| 1101 | 1190 | ||
| @@ -1110,6 +1199,7 @@ DemangleInfo<T> Demangler<T>::DemangleTuple() | |||
| 1110 | auto generic = DemangleGenericTypes().GetFullName(scopeResolution); | 1199 | auto generic = DemangleGenericTypes().GetFullName(scopeResolution); |
| 1111 | di.genericTypes = genericTypefilter(generic); | 1200 | di.genericTypes = genericTypefilter(generic); |
| 1112 | SkipChar(END); | 1201 | SkipChar(END); |
| 1202 | + AppendModeTypeIfExists(di); | ||
| 1113 | return di; | 1203 | return di; |
| 1114 | } | 1204 | } |
| 1115 | 1205 | ||
| @@ -1123,6 +1213,7 @@ DemangleInfo<T> Demangler<T>::DemangleRawArray() | |||
| 1123 | di.genericConstraints += "[]"; | 1213 | di.genericConstraints += "[]"; |
| 1124 | } | 1214 | } |
| 1125 | di.args = DemangleNextUnit().GetFullName(scopeResolution); | 1215 | di.args = DemangleNextUnit().GetFullName(scopeResolution); |
| 1216 | + AppendModeTypeIfExists(di); | ||
| 1126 | return di; | 1217 | return di; |
| 1127 | } | 1218 | } |
| 1128 | 1219 | ||
| @@ -1131,8 +1222,9 @@ DemangleInfo<T> Demangler<T>::DemangleVArray() | |||
| 1131 | { | 1222 | { |
| 1132 | DemangleInfo<T> di{ MANGLE_VARRAY_STR, TypeKind::TUPLE }; | 1223 | DemangleInfo<T> di{ MANGLE_VARRAY_STR, TypeKind::TUPLE }; |
| 1133 | SkipChar(MANGLE_VARRAY_PREFIX); | 1224 | SkipChar(MANGLE_VARRAY_PREFIX); |
| 1134 | - uint32_t num = DemangleManglingNumber(); | 1225 | + uint32_t num = static_cast<uint32_t>(DemangleManglingNumber()); |
| 1135 | di.genericTypes = DemangleGenericTypes().GetFullName(scopeResolution, num); | 1226 | di.genericTypes = DemangleGenericTypes().GetFullName(scopeResolution, num); |
| 1227 | + AppendModeTypeIfExists(di); | ||
| 1136 | return di; | 1228 | return di; |
| 1137 | } | 1229 | } |
| 1138 | 1230 | ||
| @@ -1143,6 +1235,7 @@ DemangleInfo<T> Demangler<T>::DemangleCPointer() | |||
| 1143 | SkipChar(MANGLE_PTR_PREFIX); | 1235 | SkipChar(MANGLE_PTR_PREFIX); |
| 1144 | auto generic = DemangleType().GetFullName(scopeResolution); | 1236 | auto generic = DemangleType().GetFullName(scopeResolution); |
| 1145 | di.genericTypes = genericTypefilter(generic); | 1237 | di.genericTypes = genericTypefilter(generic); |
| 1238 | + AppendModeTypeIfExists(di); | ||
| 1146 | return di; | 1239 | return di; |
| 1147 | } | 1240 | } |
| 1148 | 1241 | ||
| @@ -1163,7 +1256,7 @@ DemangleInfo<T> Demangler<T>::DemangleCommonDecl(bool isClass) | |||
| 1163 | auto pkgDi = DemanglePackageName(); | 1256 | auto pkgDi = DemanglePackageName(); |
| 1164 | di.pkgName = pkgDi.pkgName; | 1257 | di.pkgName = pkgDi.pkgName; |
| 1165 | di.isPrivateDeclaration = pkgDi.isPrivateDeclaration; | 1258 | di.isPrivateDeclaration = pkgDi.isPrivateDeclaration; |
| 1166 | - | 1259 | + |
| 1167 | // Take the part before E as identifier and concatenate with scope resolution. | 1260 | // Take the part before E as identifier and concatenate with scope resolution. |
| 1168 | DemangleInfo<T> nestedDi = DemangleNestedDecls(isClass); | 1261 | DemangleInfo<T> nestedDi = DemangleNestedDecls(isClass); |
| 1169 | di.demangled = nestedDi.demangled; | 1262 | di.demangled = nestedDi.demangled; |
| @@ -1233,6 +1326,7 @@ DemangleInfo<T> Demangler<T>::DemanglePrimitive() | |||
| 1233 | SkipChar(ch); | 1326 | SkipChar(ch); |
| 1234 | } | 1327 | } |
| 1235 | DemangleInfo<T> di{ GetPrimitiveDemangleMap<T>(ch), TypeKind::PRIMITIVE }; | 1328 | DemangleInfo<T> di{ GetPrimitiveDemangleMap<T>(ch), TypeKind::PRIMITIVE }; |
| 1329 | + AppendModeTypeIfExists(di); | ||
| 1236 | return di; | 1330 | return di; |
| 1237 | } | 1331 | } |
| 1238 | 1332 | ||
| @@ -1240,7 +1334,9 @@ template<typename T> | |||
| 1240 | DemangleInfo<T> Demangler<T>::DemangleCStringType() | 1334 | DemangleInfo<T> Demangler<T>::DemangleCStringType() |
| 1241 | { | 1335 | { |
| 1242 | SkipChar(MANGLE_CSTRING_PREFIX); | 1336 | SkipChar(MANGLE_CSTRING_PREFIX); |
| 1243 | - return DemangleInfo<T>{ MANGLE_CSTRING_STR, TypeKind::CSTRING, isValid }; | 1337 | + auto di = DemangleInfo<T>{ MANGLE_CSTRING_STR, TypeKind::CSTRING, isValid }; |
| 1338 | + AppendModeTypeIfExists(di); | ||
| 1339 | + return di; | ||
| 1244 | } | 1340 | } |
| 1245 | 1341 | ||
| 1246 | template<typename T> | 1342 | template<typename T> |
| @@ -1262,7 +1358,9 @@ DemangleInfo<T> Demangler<T>::DemangleGenericType() | |||
| 1262 | #else | 1358 | #else |
| 1263 | name = T{ MANGLE_TUPLE_PREFIX } + UIntToString(gNumber); | 1359 | name = T{ MANGLE_TUPLE_PREFIX } + UIntToString(gNumber); |
| 1264 | #endif | 1360 | #endif |
| 1265 | - return DemangleInfo<T>{ name, TypeKind::GENERIC_TYPES, isValid }; | 1361 | + auto di = DemangleInfo<T>{ name, TypeKind::GENERIC_TYPES, isValid }; |
| 1362 | + AppendModeTypeIfExists(di); | ||
| 1363 | + return di; | ||
| 1266 | } | 1364 | } |
| 1267 | 1365 | ||
| 1268 | template<typename T> | 1366 | template<typename T> |
| @@ -1272,6 +1370,7 @@ DemangleInfo<T> Demangler<T>::DemangleType() | |||
| 1272 | if (IsQualifiedType()) { | 1370 | if (IsQualifiedType()) { |
| 1273 | auto curDi = DemangleNextUnit(); | 1371 | auto curDi = DemangleNextUnit(); |
| 1274 | if (isValid) { | 1372 | if (isValid) { |
| 1373 | + AppendModeTypeIfExists(curDi); | ||
| 1275 | di.args = curDi.GetFullName(scopeResolution); | 1374 | di.args = curDi.GetFullName(scopeResolution); |
| 1276 | return di; | 1375 | return di; |
| 1277 | } | 1376 | } |
| @@ -1293,6 +1392,7 @@ DemangleInfo<T> Demangler<T>::DemangleGenericTypes() | |||
| 1293 | if (!isValid) { | 1392 | if (!isValid) { |
| 1294 | break; | 1393 | break; |
| 1295 | } | 1394 | } |
| 1395 | + AppendModeTypeIfExists(curDi); | ||
| 1296 | if (!firstIteration) { | 1396 | if (!firstIteration) { |
| 1297 | argTypesFullName += T{ ARGS_DELIMITER_TYPE }; | 1397 | argTypesFullName += T{ ARGS_DELIMITER_TYPE }; |
| 1298 | } | 1398 | } |
| @@ -1309,15 +1409,25 @@ DemangleInfo<T> Demangler<T>::DemangleFunctionParameterTypes() | |||
| 1309 | DemangleInfo<T> di{ "", TypeKind::FUNCTION_PARAMETER_TYPES }; | 1409 | DemangleInfo<T> di{ "", TypeKind::FUNCTION_PARAMETER_TYPES }; |
| 1310 | bool firstIteration = true; | 1410 | bool firstIteration = true; |
| 1311 | T argTypesFullName{}; | 1411 | T argTypesFullName{}; |
| 1412 | + // <this-mode> ::= W<payload>E, placed at the head of the param list (right after H). | ||
| 1413 | + // E.g. `H WLE l` demangles the leading "this @local!" argument before the explicit params. | ||
| 1414 | + T thisPrefix; | ||
| 1415 | + if (IsThisMode()) { | ||
| 1416 | + thisPrefix = T{"this"} + DemangleModeSet(); | ||
| 1417 | + } | ||
| 1312 | if (IsNotEndOfMangledName() && mangledName[currentIndex] == MANGLE_VOID_PREFIX) { | 1418 | if (IsNotEndOfMangledName() && mangledName[currentIndex] == MANGLE_VOID_PREFIX) { |
| 1313 | currentIndex += MANGLE_CHAR_LEN; | 1419 | currentIndex += MANGLE_CHAR_LEN; |
| 1314 | } else { | 1420 | } else { |
| 1315 | // Generic type may be next to a string, like "6<init>" | 1421 | // Generic type may be next to a string, like "6<init>" |
| 1316 | - while (IsNotEndOfMangledName() && !IsCurrentCharDigit(mangledName[currentIndex])) { | 1422 | + // Stop before a mode-set leader (Q/W) — a mode-set never starts a param type; it either |
| 1423 | + // terminates the previous type (consumed by AppendModeTypeIfExists) or is the <this-mode>. | ||
| 1424 | + while (IsNotEndOfMangledName() && !IsCurrentCharDigit(mangledName[currentIndex]) && | ||
| 1425 | + !IsModeLeader()) { | ||
| 1317 | auto curDi = DemangleNextUnit(); | 1426 | auto curDi = DemangleNextUnit(); |
| 1318 | if (!isValid) { | 1427 | if (!isValid) { |
| 1319 | break; | 1428 | break; |
| 1320 | } | 1429 | } |
| 1430 | + AppendModeTypeIfExists(curDi); | ||
| 1321 | if (!firstIteration) { | 1431 | if (!firstIteration) { |
| 1322 | argTypesFullName += T{ ARGS_DELIMITER }; | 1432 | argTypesFullName += T{ ARGS_DELIMITER }; |
| 1323 | } | 1433 | } |
| @@ -1325,6 +1435,13 @@ DemangleInfo<T> Demangler<T>::DemangleFunctionParameterTypes() | |||
| 1325 | firstIteration = false; | 1435 | firstIteration = false; |
| 1326 | } | 1436 | } |
| 1327 | } | 1437 | } |
| 1438 | + if (!thisPrefix.IsEmpty()) { | ||
| 1439 | + if (argTypesFullName.IsEmpty()) { | ||
| 1440 | + argTypesFullName = thisPrefix; | ||
| 1441 | + } else { | ||
| 1442 | + argTypesFullName = thisPrefix + T{ ARGS_DELIMITER } + argTypesFullName; | ||
| 1443 | + } | ||
| 1444 | + } | ||
| 1328 | di.args = argTypesFullName; | 1445 | di.args = argTypesFullName; |
| 1329 | return di; | 1446 | return di; |
| 1330 | } | 1447 | } |
| @@ -1373,14 +1490,14 @@ DemangleInfo<T> Demangler<T>::DemangleInnerFunction() | |||
| 1373 | } | 1490 | } |
| 1374 | 1491 | ||
| 1375 | template<typename T> | 1492 | template<typename T> |
| 1376 | -DemangleInfo<T> Demangler<T>::DemangleWrappedFunction() | 1493 | +DemangleInfo<T> Demangler<T>::DemangleWrappedFunction() |
| 1377 | { | 1494 | { |
| 1378 | auto endIndex = mangledName.Find(MANGLE_END, currentIndex); | 1495 | auto endIndex = mangledName.Find(MANGLE_END, currentIndex); |
| 1379 | auto prefixIndex = currentIndex + strlen(MANGLE_WRAPPED_FUNCTION_PREFIX); | 1496 | auto prefixIndex = currentIndex + strlen(MANGLE_WRAPPED_FUNCTION_PREFIX); |
| 1380 | mangledName = T(MANGLE_CANGJIE_PREFIX) + mangledName.SubStr(prefixIndex, endIndex - prefixIndex); | 1497 | mangledName = T(MANGLE_CANGJIE_PREFIX) + mangledName.SubStr(prefixIndex, endIndex - prefixIndex); |
| 1381 | auto di = DemangleDecl(); | 1498 | auto di = DemangleDecl(); |
| 1382 | di.demangled += WRAPPED_FUNCTION_SUFFIX_INFO; | 1499 | di.demangled += WRAPPED_FUNCTION_SUFFIX_INFO; |
| 1383 | - di.type = TypeKind::WRAPPED_FUNCTION; | 1500 | + di.type = TypeKind::WRAPPED_FUNCTION; |
| 1384 | return di; | 1501 | return di; |
| 1385 | } | 1502 | } |
| 1386 | 1503 | ||
| @@ -13,9 +13,12 @@ | |||
| 13 | #include <vector> | 13 | #include <vector> |
| 14 | #include "Base/CString.h" | 14 | #include "Base/CString.h" |
| 15 | #endif | 15 | #endif |
| 16 | +#ifdef BUILD_LIB_CANGJIE_DEMANGLE | ||
| 17 | +#include <string> | ||
| 18 | +#endif | ||
| 16 | #include <functional> | 19 | #include <functional> |
| 17 | #include <cassert> | 20 | #include <cassert> |
| 18 | - | 21 | +#include <cstdint> |
| 19 | 22 | ||
| 20 | namespace Cangjie { | 23 | namespace Cangjie { |
| 21 | 24 | ||
| @@ -280,7 +283,7 @@ private: | |||
| 280 | bool IsQualifiedType() const; | 283 | bool IsQualifiedType() const; |
| 281 | bool IsDecl() const; | 284 | bool IsDecl() const; |
| 282 | bool IsNotEndOfMangledName() const; | 285 | bool IsNotEndOfMangledName() const; |
| 283 | - bool MatchForward(const char pattern[], uint32_t len) const; | 286 | + bool MatchForward(const char pattern[], size_t len) const; |
| 284 | 287 | ||
| 285 | /** | 288 | /** |
| 286 | * @brief Get the current character without incrementing `currentIndex`. | 289 | * @brief Get the current character without incrementing `currentIndex`. |
| @@ -300,6 +303,16 @@ private: | |||
| 300 | void SkipChar(char ch); | 303 | void SkipChar(char ch); |
| 301 | 304 | ||
| 302 | void SkipOptionalChar(char ch); | 305 | void SkipOptionalChar(char ch); |
| 306 | + /// Whether the current character starts a <mode-set> leader (`Q` or `W`). | ||
| 307 | + bool IsModeLeader() const; | ||
| 308 | + /// Whether the current character is the <this-mode> leader `W`. | ||
| 309 | + bool IsThisMode() const; | ||
| 310 | + /// Parse a <mode-set> (`Q<payload>E` or `W<payload>E`) and return the demangled modal | ||
| 311 | + /// suffix, e.g. " @ local!" / " @ local?". The caller must ensure the current char is a leader. | ||
| 312 | + T DemangleModeSet(); | ||
| 313 | + /// If the current position holds a <mode-set> (`Q<payload>E` | `W<payload>E`), parse it and append the | ||
| 314 | + /// demangled modal suffix to \p di. | ||
| 315 | + void AppendModeTypeIfExists(DemangleInfo<T>& di); | ||
| 303 | 316 | ||
| 304 | void SkipString(const char pattern[]); | 317 | void SkipString(const char pattern[]); |
| 305 | void ErrorLog(const char* msg) const; | 318 | void ErrorLog(const char* msg) const; |