// ĠCopyright Ġ 2 0 0 0 - 2 0 2 1 ĠJetBrains Ġs . r . o . Ġand Ġcontributors . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ Ċ package Ġorg . jetbrains . kotlin . idea . debugger . stack Frame Ċ Ċ import Ġcom . intellij . debugger . Debugger Context Ċ import Ġcom . intellij . debugger . engine . evaluation . Evaluate Exception Ċ import Ġcom . intellij . debugger . engine . evaluation . Evaluation Context Impl Ċ import Ġcom . intellij . debugger . impl . descriptors . data . Descriptor Data Ċ import Ġcom . intellij . debugger . impl . descriptors . data . Display Key Ċ import Ġcom . intellij . debugger . impl . descriptors . data . Simple Display Key Ċ import Ġcom . intellij . debugger . ui . impl . watch .* Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . psi . Java Psi Facade Ċ import Ġcom . intellij . psi . Psi Expression Ċ import Ġcom . intellij . util . Incorrect OperationException Ċ import Ġcom . sun . j di .* Ċ Ċ class ĠL abeled This Data ( val Ġlabel : ĠString , Ġval Ġname : ĠString , Ġval Ġvalue : ĠValue ?) Ġ: ĠDescriptor Data < Value Descriptor Impl >() Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġcreate Descriptor Impl ( project : ĠProject ): ĠValue Descriptor Impl Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠValue Descriptor Impl ( project , Ġvalue ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetName () Ġ= Ġthis @ Labeled This Data . name ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcalc Value ( evaluation Context : ĠEvaluation Context Impl ?) Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcan SetValue () Ġ= Ġfalse ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetDescriptor Evaluation ( context : ĠDebugger Context ?): ĠPsi Expression Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠTODO Ġchange Ġto Ġlabeled Ġthis ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġelement Factory Ġ= ĠJava Psi Facade . getElement Factory ( my Project ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġelement Factory . create Expression FromText (" this ", Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠInc orrect OperationException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠEvaluate Exception ( e . message , Ġe ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Display Key (): ĠDisplay Key < Value Descriptor Impl > Ġ= ĠSimple Display Key ( this ) ĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?) Ġ= Ġother Ġis ĠL abeled This Data Ġ&& Ġother . name Ġ== Ġname ĊĠĠĠ Ġoverride Ġfun ĠhashCode () Ġ= Ġname . hashCode () Ċ } Ċ