package Ġcom . b aj dcc . L AL R 1 . grammar . tree . closure Ċ Ċ /** Ċ Ġ* Ġ éĹŃ åĮħ Ċ Ġ* Ċ Ġ* Ġ@ author Ġb aj dcc Ċ Ġ*/ Ċ open Ġclass ĠClosure Scope Ġ: ĠI Closure Scope Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġref Ġ= Ġmutable Set Of < Any >() ĊĠĠĠ Ġprivate Ġval Ġdecl Ġ= Ġmutable Set Of < Any >() ĊĊĠĠĠ Ġprotected Ġval Ġclo s ures : ĠSet < Any >? ĊĠĠĠĠĠĠĠ Ġget () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġclosure Ġ= Ġref . to Mutable Set () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclosure . removeAll ( decl ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( closure . isEmpty ()) Ġnull Ġelse Ġclosure ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd Ref ( obj : ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠ Ġref . add ( obj ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd Decl ( obj : ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdecl . add ( obj ) ĊĠĠĠ Ġ} Ċ } Ċ