Details
-
Technical task
-
Resolution: Fixed
-
P2: Important
-
None
-
None
-
6c1391911 (dev), 73baccb5f (dev), 8f34483ec (dev), 2b741acc5 (dev), 6670c4ba4 (dev), f61c298fc (dev), bf04c2200 (dev), 55b81ce7c (dev), 8e91ac6cd (dev), 166f53b63 (dev), 13ab5cd47 (dev), e8d363b82 (dev), 662f30236 (dev), 3114d4d15 (dev), aada41a2f (dev)
Description
Implement completion for all JS statements.
Always think about the two cases:
- completing the keyword (`for`, `let`, `switch`, for example)
- completing the statement itself (inside `for(let x = <complete here>; ; ){}`, for example).
Here a list: ( indicates merged, indicates 'wont do', needs to be done and in progress)
- BlockStatement
- VariableStatement
- EmptyStatement
- ExpressionStatement
- IfStatement
- IterationStatement
- do {} while();
- while() {}
- for() {}
- for (... in ...) {}
- for (... of ...){}
- SwitchStatement switch() {}
- CaseBlock/CaseClauses/DefaultClause/CaseClause
- Continue/Break statement
- ReturnStatement
- WithStatement
- LabelledStatement
- ThrowStatement
- TryStatement
- Declaration (check again at https://262.ecma-international.org/7.0/#prod-Declaration)
- Lexical Declaration (let and const)
- class declaration
- Hoistable declaration: function + function* (including lambdas)
Attachments
Issue Links
- covers
-
QTCREATORBUG-30056 QML snippets don't work when Language Server is enabled
- Closed
- relates to
-
QTBUG-118635 QML Language Server make unexpected suggestions for anything on a line that starts a function
- Closed
- split to
-
QTBUG-119803 qmlls: completion for JS methods/lambdas
- Closed
For Gerrit Dashboard: QTBUG-117445 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
509233,16 | qmlls: implement completion in JS for statement + test snippets | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
515366,3 | dom: allow script elements to have file location regions | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
515367,4 | qqmllsutils::completions: extract into multiple methods | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
515368,8 | qmlls: code snippets for JS statement completions | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
515926,9 | qmlls: implement completion in JS block statement | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516045,7 | add missing completion in suggestJSStatementCompletion | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516046,8 | qmlls: completions on expressions | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516102,5 | qmlls: auto completion for inside if statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516103,5 | qmlls: auto completion for inside return statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516104,5 | fix mismatch in QQmlLSUtils::completions | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516105,5 | qmlls: auto completion for inside while statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516106,6 | qmlls: auto completion for inside do while statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516107,6 | qmlls: auto completion for inside for each statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516321,4 | disable completions for non-implemented types | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516429,2 | tst_qmlls_modules::buildDir: stop testing unrelated completions | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
516597,2 | qqmllsutils: add explanation for betweenLocation's special cases | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
517513,2 | tst_qmlls_utils::completions: fix typo in row name | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
517514,2 | qmlls: fix completions on qualified identifiers | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
520284,5 | qmldom: add support for try catch statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
520285,6 | qmlls: suppress completions for try-catch statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
521001,9 | qmlls: completions in switch/case/default statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
522215,7 | qmlls: completions in variable declarations | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
522572,6 | qmlls: completions in throw statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
522977,5 | qmldom: add support for continue and break statement representations | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
522979,7 | qmlls: implement completions for labelled statements | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
522980,7 | qmlls: continue and break statement completion | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
522981,12 | qmlls: suggest break and continue only where actually allowed | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
523042,12 | qmlls: fix method body and statement completion | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |