Skip to content

Hover Refined Methods #72

@rcosta358

Description

@rcosta358

Extend hover support to methods, similarly to variables (#70), by displaying their refinement information. This includes:

  • Pre- and post-conditions (state refinements)
  • Parameter refinements
  • Return refinement

This will require some changes in the verifier to store this information in the context history.

Example

@StateRefinement(from="a()", to="b()")
@StateRefinement(from="b()", to="c()")
@Refinement("_ > 0")
int foo(@Refinement("_ > 1") int x) { ... }

Hovering foo (at definition or invocations) shows:

@StateRefinement(from="a()", to="b()")
@StateRefinement(from="b()", to="c()")
@Refinement("x > 1")
@Refinement("return > 0")

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions