Skip to content

Fix type inferencing and syntax highlighting for super trait method and property references #953

@eric-milles

Description

@eric-milles

Consider the following:

trait Auditable {
  String option
  void audit() {
    if (checkCondition()) {
      println 'audited'
    }
  }
  private static boolean checkCondition() {
    println 'condition checked'
    true
  }
}

trait Another {
  private static boolean checkCondition() {
    false
  }
}

class C implements Auditable, Another {
  void m() {
    Another.super.checkCondition()
    Auditable.super.checkCondition()
    Auditable.super.option = 'whatever'
  }
}

Syntax coloring within the method m() should be "trait" for each occurrence of Another and Auditable. And coloring should be "method" for option, which refers to the property setter method. Code select for the sub-expressions in Auditable.super.option is not working either.

image

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions