class A {
  def String foo = "asd"

  def setFoo(asd){}

  def getFoo(){"dsfsdf"}
}


A a = new A()

a.<caret>foo
a.getFoo()

a.foo = ""
a.setFoo("asd")
-----
class A {
  def String foo = "asd"

  def setFoo(asd){}

  def getNewName(){"dsfsdf"}
}


A a = new A()

a.newName
a.getNewName()

a.foo = ""
a.setFoo("asd")