package Ġru . ci an . hu awei . publish . utils Ċ Ċ import Ġkotlin . reflect . K Property Ċ import Ġorg . gradle . api . Project Ċ Ċ internal Ġclass ĠGradle Property < T , ĠV >( ĊĠĠĠ Ġproject : ĠProject , ĊĠĠĠ Ġtype : ĠClass < V >, ĊĠĠĠ Ġdefault : ĠV ? Ġ= Ġnull Ċ ) Ġ{ ĊĠĠĠ Ġval Ġproperty Ġ= Ġproject . objects . property ( type ). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġset ( default ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoperator Ġfun ĠgetValue ( this Ref : ĠT , Ġproperty : ĠK Property < *> ): ĠV Ġ= ĊĠĠĠĠĠĠĠ Ġthis . property . get () ĊĊĠĠĠ Ġoperator Ġfun ĠsetValue ( this Ref : ĠT , Ġproperty : ĠK Property <* >, Ġvalue : ĠV ) Ġ= ĊĠĠĠĠĠĠĠ Ġthis . property . set ( value ) Ċ } Ċ Ċ @ Suppress (" PLATFORM _ CLASS _ MAP PED _ TO _ K OT LIN ") Ċ internal Ġclass ĠGradle Int Property < T >( ĊĠĠĠ Ġproject : ĠProject , ĊĠĠĠ Ġdefault : ĠInt ? Ġ= Ġnull Ċ ) Ġ{ ĊĠĠĠ Ġval Ġproperty Ġ= Ġproject . objects . property ( Integer :: class . java ). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġset ( default Ġas ? ĠInteger ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoperator Ġfun ĠgetValue ( this Ref : ĠT , Ġproperty : ĠK Property < *> ): ĠInt Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . property . get (). toInt () ĊĊĠĠĠ Ġoperator Ġfun ĠsetValue ( this Ref : ĠT , Ġproperty : ĠK Property <* >, Ġvalue : ĠInt ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . property . set ( value Ġas ? ĠInteger ) Ċ } Ċ