package Ġchat . sphinx . wrapper _ invite Ċ Ċ @ Suppress (" NOTH ING _ TO _ INLINE ") Ċ inline Ġfun ĠString . to Valid Invite String OrNull (): ĠInv ite String ? Ġ= ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ ĠInv ite String ( this ). let Ġ{ Ġi String Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( i String . isValid ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi String ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} Ċ Ċ // ĠDon 't Ġwant Ġto Ġmake Ġthis Ġa Ġrequirement Ġfor ĠInv ite String Ġinit Ċ // Ġblock Ġas Ġit Ġcould Ġcause Ġcrashes Ġin Ġthe Ġpersistence Ġlayer Ġdue Ċ // Ġto Ġit Ġbeing Ġa Ġnon - null Ġrequired Ġargument Ġin Ġthe ĠInv ite D bo . Ċ inline Ġval ĠInv ite String . isValid : ĠBoolean ĊĠĠĠ Ġget () Ġ= Ġvalue . matches ("^ [ A - F 0 - 9 a - f ]{ 4 0 }\ $ ". to Regex ()) Ċ Ċ @ Jvm Inline Ċ value Ġclass ĠInv ite String ( val Ġvalue : ĠString ) Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġrequire ( value . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Invite String Ġcannot Ġbe Ġempty " ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ