package Ġcom . cu up a . class ific ator . domain Ċ Ċ /** Ċ Ġ* Ġ@ author ĠSimon ĠTh iel Ġ( https :// github . com / cu up a ) Ċ Ġ*/ Ċ class ĠSender Ġ: ĠSemantic Result Data () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtoken List Ġ= Ġmutable ListOf < Token >() ĊĠĠĠ Ġvar Ġname : ĠString Ġ= Ġ"" ĊĠĠĠ Ġprivate Ġvar ĠnumberOf Occ urrences Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġadd Token ( token : ĠToken ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtoken List . add ( token ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġmatch ( text : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( token Ġin Ġtoken List ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! token . match ( text )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtrue ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġequals ( other : ĠAny ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( other ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull Ġ-> Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis ĠSender Ġ-> Ġname Ġ== Ġother . name ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcount NumberOf Occ urrences (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠnumberOf Occ urrences ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠhashCode (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġtoken List . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ Ġname . hashCode () ĊĠĠĠĠĠĠĠ Ġresult Ġ= Ġ 3 1 Ġ* Ġresult Ġ+ ĠnumberOf Occ urrences ĊĠĠĠĠĠĠĠ Ġreturn Ġresult ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠUNKNOWN Ġ= Ġ" UNKNOWN " ĊĠĠĠ Ġ} Ċ }