Skip to content

Port validation to Langium #543

Closed
@lars-reimann

Description

@lars-reimann

Infos

Unnecessary syntax

  • UnnecessaryAssignment
  • UnnecessaryArgumentList
  • UnnecessaryBody
  • UnnecessarySafeAccess
  • UnnecessaryParameterList
  • UnnecessaryResultList
  • UnnecessaryTypeArgumentList
  • UnnecessaryTypeParameterList
  • UnnecessaryUnionType
  • UnnecessaryElvisOperator (needs partial evaluation)

Annotations

  • IdenticalPythonModule (needs partial evaluation)
  • IdenticalPythonName (needs partial evaluation)

Warnings

Deprecation

  • AssignedDeclarationIsDeprecated
  • CorrespondingParameterIsDeprecated
  • CalledAnnotationIsDeprecated
  • ReferencedDeclarationIsDeprecated

Experimental

  • AssignedDeclarationIsExperimental
  • CorrespondingParameterIsExperimental
  • CalledAnnotationIsExperimental
  • ReferencedDeclarationIsExperimental

Name conventions

  • NameShouldBeLowerCamelCase
  • NameShouldBeUpperCamelCase
  • SegmentsShouldBeLowerCamelCase

Unused declarations

  • UnusedParameter
  • UnusedPlaceholder

Other

  • ImplicitlyIgnoredResultOfCall
  • PlaceholderIsRenamingOfDeclaration (becomes error)
  • DuplicateTarget (needs partial evaluation)

Errors

  • AttributeMustHaveType
  • ParameterMustHaveType
  • ResultMustHaveType
  • FileMustDeclarePackage
  • StubFileMustNotDeclarePipelinesSchemasOrSteps
  • PipelineFileMustOnlyDeclarePipelinesAndSteps
  • DEPRECATED_REQUIRED_PARAMETER
  • WILDCARD_IMPORT_WITH_ALIAS
  • NoRequiredParametersAfterFirstOptionalParameter
  • NoYieldInPipeline
  • NO_POSITIONAL_ARGUMENTS_AFTER_FIRST_NAMED_ARGUMENT
  • NO_POSITIONAL_TYPE_ARGUMENTS_AFTER_FIRST_NAMED_TYPE_ARGUMENT
  • UNION_TYPE_WITHOUT_TYPE_ARGUMENTS
  • MissingTemplateExpression
  • UnassignedResult
  • DuplicateResultAssignment
  • NoOptionalParametersInCallableType
  • BlockLambdaPrefix
  • ExpertMustBeOptional
  • MissingSafeAccess
  • UNRESOLVED_IMPORTED_NAMESPACE
  • INSTANCE_METHOD_MUST_BE_CALLED
  • ASSIGNEE_WITHOUT_VALUE
  • ANNOTATION_IS_SINGLE_USE
  • TooManyTypeArguments
  • MISSING_TYPE_ARGUMENT_LIST
  • MISSING_REQUIRED_TYPE_PARAMETER
  • UniqueTypeParameters
  • CLASS_MUST_INHERIT_ONLY_CLASSES
  • CLASS_MUST_NOT_BE_SUBTYPE_OF_ITSELF
  • RECEIVER_MUST_BE_CALLABLE
  • CALLED_CLASS_MUST_HAVE_CONSTRUCTOR
  • REDECLARATION
  • REDECLARATION_IN_OTHER_FILE
  • MISSING_ARGUMENT_LIST (for annotations)
  • ENUM_VARIANT_MUST_BE_INSTANTIATED
  • MustNotStaticallyReferenceEnum (must be used in member access)
  • MustNotStaticallyReferenceClass (must be used in member access/instantiated - if it has constructor)
  • DivisionByZero (needs partial evaluation)
  • MustBeConstant (needs partial evaluation)
  • LambdaMustBeTypedArgumentOrYielded (Allow lambdas only as arguments or default values of parameters #409)
  • UNIQUE_PARAMETERS
  • TOO_MANY_ARGUMENTS
  • MISSING_REQUIRED_PARAMETER
  • WRONG_TARGET (needs partial evaluation)

Metadata

Metadata

Assignees

Labels

releasedIncluded in a releasevalidation ✔️Improved or new static checks

Type

No type

Projects

Status

✔️ Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions