package Ġorg . jb . cce . visitor s Ċ Ċ import Ġorg . jb . cce . actions . Completion Strategy Ċ import Ġorg . jb . cce . u ast . Comp letable Ċ import Ġorg . jb . cce . u ast . statements . expressions . Variable Access Node Ċ import Ġorg . jb . cce . u ast . statements . expressions . references . Field Access Node Ċ import Ġorg . jb . cce . u ast . statements . expressions . references . MethodCall Node Ċ Ċ class ĠComp letable Nodes Visitor ( override Ġval Ġtext : ĠString , Ġstrategy : ĠCompletion Strategy , Ġtext Start : ĠInt ): ĊĠĠĠĠĠĠĠ ĠCall Comp letions Visitor ( text , Ġstrategy , Ġtext Start ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġvisit MethodCall Node ( node : ĠMethod Call Node ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnode . prefix ?. accept ( this ) ĊĠĠĠĠĠĠĠ Ġif Ġ( check Filters ( node )) Ġvisit Comp letable ( node ) ĊĠĠĠĠĠĠĠ Ġvisit Children ( node ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġvisit Variable Access Node ( node : ĠVariable Access Node ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( check Filters ( node )) Ġvisit Comp letable ( node ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġvisit Field Access Node ( node : ĠField Access Node ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnode . prefix ?. accept ( this ) ĊĠĠĠĠĠĠĠ Ġif Ġ( check Filters ( node )) Ġvisit Comp letable ( node ) ĊĠĠĠĠĠĠĠ Ġvisit Children ( node ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcheck Filters ( node : ĠComp letable ): ĠBoolean Ġ= Ġstrategy . filters . all Ġ{ Ġit . value . should Evaluate ( node . getProperties ()) Ġ} Ċ }