6 releases
0.1.5 | Feb 20, 2024 |
---|---|
0.1.4 | Feb 20, 2024 |
#7 in #sdml
244 downloads per month
77KB
1.5K
SLoC
Crate sdlm_error
Rust Library containing the error and diagnostic types for the Simple Domain Modeling Language (SDML).
This package is part of the Rust SDML project and specifically defines the error and diagnostic types for the project. The project's intent is to provide an idiomatic implementation of the in-memory model, parser, generators, and the CLI tool.
The following figure demonstrates this package in the broader project context.
╭───────╮
│ CLI │
╔══ │ crate │ ══╗
║ ╰───────╯ ║
┌╌╌╌╌╌╌╌╌┐ V V
┆ ┆ ╭──────────╮ ╭──────────╮ Formatted Source
┆ source ┆ ══> │ parse │ ══> │ generate │ ══> RDF Representation
┆ file ┆ ╭──│ crate │───────│ crate │──╮ Documentation
┆ ┆ │ ╰──────────╯ ╰──────────╯ │ Diagrams
└╌╌╌╌╌╌╌╌┘ │ core crate │──╮
╰───────────────────────────────────╯ │
┌───────┐ ⋀ error crate │
│ other │ ║ ╌╌╌╌╌╌╌╌╌╌╌╌╌╌─────────────╯
│ tools │ ═══════════╝
└───────┘
Changes
Version 0.1.5
- Feature: add new diagnostic for
IdentifierNotPreferredCase
where an identifier is not in the preferred case style for its usage.- Add new code to
ErrorCode
- Add new function
identifier_not_preferred_case
- Add new enum
IdentifierCaseConvention
used to identify the case style to enforce.
- Add new code to
Version 0.1.4
- Feature: improved a number of diagnostic help messages.
- Feature: added shared
UseColor
type.
Version 0.1.3
- Feature: add new diagnostic for
DeprecatedTermUsed
where an identifier includes a term listed in a suppliedTermSet
.- Add new code to
ErrorCode
- Add new function
deprecated_term_used
- Add new code to
Version 0.1.2
- Feature: add new diagnostic for
DoubleUnderscoredIdentifier
where an identifier include two (or more) consecutive underscore characters.- Add new code to
ErrorCode
- Add new function
double_underscored_identifier
- Add new code to
Version 0.1.1
- Feature: add new diagnostic for
PropertyReferenceNotProperty
where the property name in a member does not resolve to a property definition.- Add new code to
ErrorCode
- Add new function
property_reference_not_property
- Add new code to
Version 0.1.0
Initial Release.
- Error Handling:
- Copy
error
module fromsdml_core
, rename aserrors
. - Remove diagnostics from the existing
Error
type.
- Copy
- Diagnostics:
- Copy
diagnostics
module. - Create new
diagnostics::codes
module andErrorCode
enum. - Create new
diagnostics::functions
module and functions for eachErrorCode
.
- Copy
- Diagnostic Reporting:
- Create new
diagnostics::reporter
module. - Create new
Reporter
trait. - Create a
StandardStreamReporter
to emit colored and structured errors to the console. - Create a
BailoutReporter
that will turn the first diagnostic it is given into an error.
- Create new
Dependencies
~11–20MB
~254K SLoC