TypeCobol
TypeCobol copied to clipboard
TypeCobol is an Incremental Cobol parser for IBM Enterprise Cobol 6 for zOS syntax. TypeCobol is also an extension of Cobol 85 language which can then be converted to Cobol85.
**Describe the bug** Same as in #2550 but the stacktrace is different. Stacktrace ``` à TypeCobol.Compiler.Scanner.Scanner.GetTokenStartingFrom(Int32 startIndex) à TypeCobol.Compiler.Scanner.AbstractScanner.ScanWhitespace(Int32 startIndex) à TypeCobol.Compiler.Scanner.Scanner.GetTokenStartingFrom(Int32 startIndex) à TypeCobol.Compiler.Scanner.Scanner.ScanTokensLine(TokensLine tokensLine, MultilineScanState initialScanState, TypeCobolOptions compilerOptions,...
`HashSet` is faster than using `Distinct()` method on a `List`. Find all usages of `Distinct()` and check if it's useful to switch to `HashSet`.
**Describe the bug** Following #2366. The property `CompilationDocument.CopyTextNamesVariations` is not updated properly when COPY instructions are deleted through incremental changes. **To Reproduce** Assuming copy `YLSCPYA` exists and is of type...
Following #373 and #2347, we should improve support for file descriptions in LanguageServer. File descriptions are allowed only in a few statements: `Close, delete, merge, open, read, return, sort, start,...
https://github.com/Microsoft/language-server-protocol/blob/master/versions/protocol-2-x.md#document-highlights-request
Support folding for Language Server Protocol See https://microsoft.github.io/language-server-protocol/specification#textDocument_foldingRange
With this kind of syntax: ```cobol 01 Person typedef strict. 03 Names. 05 LastName pic X(30). 05 FirstName pic X(30). 03 BirthDate type Date. 01 Person1 type Person. ``` When...
It is not always necessary for the completion to suggest a fully qualified name. In certain case it's way too long. You may could add an option that makes the...
Idea from @reydelpa is to sort completion list items by relevance.
**What is the current problem** With IBM Enterprise COBOL for z/OS 6.2 we can now use `set xxx to false` syntax. This will simplify the code generation of our type...