Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>osc-language-serverNew to Visual Studio Code? Get it now.
osc-language-server

osc-language-server

Akkodis GermanyConsulting GmbH

|
201 installs
| (0) | Free
A language server for OpenSCENARIO DSL
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

ASAM OpenSCENARIO® DSL

Akkodis osc-language-server helps developers write, understand and improve ASAM OpenSCENARIO DSL code by providing:

  • live error checking while typing
  • go-to-definition
  • hover information

Setup

osc-language-server server

The extension includes the osc-language-server language server for both Windows and Ubuntu 20.04 x86-64. This also includes a built-in version of the standard domain model library that is used by default, including: - osc.standard (for backwards compatibility with version 2.0 of the language) - osc.standard.types (for physical types and structures based on them) - osc.standard.domain (for the domain model specific parts) - osc.standard.all (both types and domain)

The linux version does currently not include the necessary external libraries, so you must ensure that some packages are installed in your system. Those are: - libjsoncpp1 - libantlr4-runtime4.8 - libboost-program-options1.71.0

You can install them with:

    sudo apt update
    sudo apt install libjsoncpp1 libantlr4-runtime4.8 libboost-program-options1.71.0

Features

Errors and warnings

Errors in the code are marked and shown while typing. There are also some warnings that mostly notify about:

  • constructs that the language server understands, but are non-standard
  • constructs that are not fully supported yet
  • a few style issues (e.g. exporting an identifier from a namespace without ever defining it

Hover hints

The language server can describe most entities if you hover the mouse over them (or press Ctrl-KI). It can show you information about types, fields, parameters, methods, namespaces and certain values.

Known limitations and not-yet supported features

  • Namespace support now covers most of the language, but some details might still be wonky.
  • Reexport-all (reexporting ns::* from another namespace) is not supported.
  • For constraints, there are checks if the expressions themselves make sense, but no constraint resolution is done, so conflicting constraints are not detected.
  • There is limited support for coverage
  • remove_default is not supported
  • escaped unicode character numbers with 16 oder 32 bits are not supported
  • conditional inheritance is ignored
  • list constructors with enum values may fail if there are multiple candidates for the enum's type. Use long enum member names to disambiguate.
  • incorrect method overriding (e.g. overridden method has a different signature from base method) is not always detected

Bugs

If you think you've found a bug in this extension, please report it to rolf.magnus@akkodis.com. Ideally, add an .osc file that can be used to reproduce the problem, as well as a description of what you expected to happen and what happened instead.

See our product site for more information about our products.

ASAM OpenSCENARIO® DSL is a registred trademark of ASAM e.V.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft