/* Ċ Ġ* ĠCopyright Ġ 2 0 2 0 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġandroidx . compose . foundation . layout Ċ Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . Immutable Ċ import Ġandroidx . compose . runtime . Stable Ċ import Ġandroidx . compose . runtime . remember Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . layout . Layout Ċ import Ġandroidx . compose . ui . layout . Measured Ċ import Ġandroidx . compose . ui . layout . Vertical Alignment Line Ċ import Ġandroidx . compose . ui . platform . debug Inspector Info Ċ Ċ /** Ċ Ġ* ĠA Ġlayout Ġcomp osable Ġthat Ġplaces Ġits Ġchildren Ġin Ġa Ġvertical Ġsequence . ĠFor Ġa Ġlayout Ġcomp osable Ċ Ġ* Ġthat Ġplaces Ġits Ġchildren Ġin Ġa Ġhorizontal Ġsequence , Ġsee Ġ[ Row ]. ĠNote Ġthat Ġby Ġdefault Ġitems Ġdo Ċ Ġ* Ġnot Ġscroll ; Ġsee Ġ` Modifier . vertical Scroll ` Ġto Ġadd Ġthis Ġbehavior . ĠFor Ġa Ġvert ically Ċ Ġ* Ġscroll able Ġlist Ġthat Ġonly Ġcomp o ses Ġand Ġl ays Ġout Ġthe Ġcurrently Ġvisible Ġitems Ġsee Ġ` Lazy Column `. Ċ Ġ* Ċ Ġ* ĠThe Ġ[ Column ] Ġlayout Ġis Ġable Ġto Ġassign Ġchildren Ġheight s Ġaccording Ġto Ġtheir Ġweights Ġprovided Ċ Ġ* Ġusing Ġthe Ġ[ Column Scope . weight ] Ġmodifier . ĠIf Ġa Ġchild Ġis Ġnot Ġprovided Ġa Ġweight , Ġit Ġwill Ġbe Ċ Ġ* Ġasked Ġfor Ġits Ġpreferred Ġheight Ġbefore Ġthe Ġsizes Ġof Ġthe Ġchildren Ġwith Ġweights Ġare Ġcalculated Ċ Ġ* Ġproportion ally Ġto Ġtheir Ġweight Ġbased Ġon Ġthe Ġremaining Ġavailable Ġspace . Ċ Ġ* Ċ Ġ* ĠWhen Ġnone Ġof Ġits Ġchildren Ġhave Ġweights , Ġa Ġ[ Column ] Ġwill Ġbe Ġas Ġsmall Ġas Ġpossible Ġto Ġfit Ġits Ċ Ġ* Ġchildren Ġone Ġon Ġtop Ġof Ġthe Ġother . ĠIn Ġorder Ġto Ġchange Ġthe Ġheight Ġof Ġthe Ġ[ Column ], Ġuse Ġthe Ċ Ġ* Ġ[ Modifier . required Height ] Ġmodifiers ; Ġe . g . Ġto Ġmake Ġit Ġfill Ġthe Ġavailable Ġheight Ġ[ Modifier . fill Max Height ] Ċ Ġ* Ġcan Ġbe Ġused . ĠIf Ġat Ġleast Ġone Ġchild Ġof Ġa Ġ[ Column ] Ġhas Ġa Ġ[ weight ][ Column Scope . weight ], Ċ Ġ* Ġthe Ġ[ Column ] Ġwill Ġfill Ġthe Ġavailable Ġheight , Ġso Ġthere Ġis Ġno Ġneed Ġfor Ġ[ Modifier . fill Max Height ]. Ċ Ġ* ĠHowever , Ġif Ġ[ Column ]' s Ġsize Ġshould Ġbe Ġlimited , Ġthe Ġ[ Modifier . required Height ] Ġor Ġ[ Modifier . required Size ] Ġlayout Ċ Ġ* Ġmodifiers Ġshould Ġbe Ġapplied . Ċ Ġ* Ċ Ġ* ĠWhen Ġthe Ġsize Ġof Ġthe Ġ[ Column ] Ġis Ġlarger Ġthan Ġthe Ġsum Ġof Ġits Ġchildren Ġsizes , Ġa Ċ Ġ* Ġ[ vertical Arrange ment ] Ġcan Ġbe Ġspecified Ġto Ġdefine Ġthe Ġposition ing Ġof Ġthe Ġchildren Ġinside Ġthe Ċ Ġ* Ġ[ Column ]. ĠSee Ġ[ Arrange ment ] Ġfor Ġavailable Ġposition ing Ġbehaviors ; Ġa Ġcustom Ġarrange ment Ġcan Ġalso Ċ Ġ* Ġbe Ġdefined Ġusing Ġthe Ġconstructor Ġof Ġ[ Arrange ment ]. Ċ Ġ* Ċ Ġ* ĠExample Ġusage : Ċ Ġ* Ċ Ġ* Ġ@ sample Ġandroidx . compose . foundation . layout . samples . Simple Column Ċ Ġ* Ċ Ġ* Ġ@ param Ġmodifier ĠThe Ġmodifier Ġto Ġbe Ġapplied Ġto Ġthe ĠColumn . Ċ Ġ* Ġ@ param Ġvertical Arrange ment ĠThe Ġvertical Ġarrange ment Ġof Ġthe Ġlayout 's Ġchildren . Ċ Ġ* Ġ@ param Ġhorizontal Alignment ĠThe Ġhorizontal Ġalignment Ġof Ġthe Ġlayout 's Ġchildren . Ċ Ġ* Ċ Ġ* Ġ@ see ĠRow Ċ Ġ* Ġ@ see Ġ[ android x . compose . foundation . lazy . Lazy Column ] Ċ Ġ*/ Ċ @ Composable Ċ inline Ġfun ĠColumn ( ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier , ĊĠĠĠ Ġvertical Arrange ment : ĠArrange ment . Vertical Ġ= ĠArrange ment . Top , ĊĠĠĠ Ġhorizontal Alignment : ĠAlignment . Horizontal Ġ= ĠAlignment . Start , ĊĠĠĠ Ġcontent : Ġ@ Composable ĠColumn Scope . () Ġ-> ĠUnit Ċ ) Ġ{ ĊĠĠĠ Ġval Ġmeasure Policy Ġ= Ġcolumn Measure Policy ( vertical Arrange ment , Ġhorizontal Alignment ) ĊĠĠĠ ĠLayout ( ĊĠĠĠĠĠĠĠ Ġcontent Ġ= Ġ{ ĠColumn Scope Instance . content () Ġ}, ĊĠĠĠĠĠĠĠ Ġmeasure Policy Ġ= Ġmeasure Policy , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= Ġmodifier ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Published Api Ċ internal Ġval ĠDefault Column Measure Policy Ġ= Ġrow Column Measure Policy ( ĊĠĠĠ Ġorientation Ġ= ĠLayout Orientation . Vertical , ĊĠĠĠ Ġarrange ment Ġ= Ġ{ Ġtotal Size , Ġsize , Ġ_, Ġdensity , Ġout Position Ġ-> ĊĠĠĠĠĠĠĠ Ġwith ( Arrange ment . Top ) Ġ{ Ġdensity . arrange ( total Size , Ġsize , Ġout Position ) Ġ} ĊĠĠĠ Ġ}, ĊĠĠĠ Ġarrange ment Spacing Ġ= ĠArrange ment . Top . spacing , ĊĠĠĠ Ġcross AxisAlignment Ġ= ĠCross AxisAlignment . horizontal ( Alignment . Start ), ĊĠĠĠ Ġcross Axis Size Ġ= ĠSize Mode . Wrap Ċ ) Ċ Ċ @ Published Api Ċ @ Composable Ċ internal Ġfun Ġcolumn Measure Policy ( ĊĠĠĠ Ġvertical Arrange ment : ĠArrange ment . Vertical , ĊĠĠĠ Ġhorizontal Alignment : ĠAlignment . Horizontal Ċ ) Ġ= Ġremember ( vertical Arrange ment , Ġhorizontal Alignment ) Ġ{ ĊĠĠĠ Ġif Ġ( vertical Arrange ment Ġ== ĠArrange ment . Top Ġ&& Ġhorizontal Alignment Ġ== ĠAlignment . Start ) Ġ{ ĊĠĠĠĠĠĠĠ ĠDefault Column Measure Policy ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġrow Column Measure Policy ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġorientation Ġ= ĠLayout Orientation . Vertical , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarrange ment Ġ= Ġ{ Ġtotal Size , Ġsize , Ġ_, Ġdensity , Ġout Position Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwith ( vertical Arrange ment ) Ġ{ Ġdensity . arrange ( total Size , Ġsize , Ġout Position ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarrange ment Spacing Ġ= Ġvertical Arrange ment . spacing , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcross AxisAlignment Ġ= ĠCross AxisAlignment . horizontal ( horizontal Alignment ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcross Axis Size Ġ= ĠSize Mode . Wrap ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠScope Ġfor Ġthe Ġchildren Ġof Ġ[ Column ]. Ċ Ġ*/ Ċ @ Layout Scope Marker Ċ @ Immutable Ċ interface ĠColumn Scope Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠSize Ġthe Ġelement 's Ġheight Ġpro portional Ġto Ġits Ġ[ weight ] Ġrelative Ġto Ġother Ġweighted Ġsibling ĊĠĠĠĠ Ġ* Ġelements Ġin Ġthe Ġ[ Column ]. ĠThe Ġparent Ġwill Ġdivide Ġthe Ġvertical Ġspace Ġremaining Ġafter Ġmeas uring ĊĠĠĠĠ Ġ* Ġun weighted Ġchild Ġelements Ġand Ġdistribute Ġit Ġaccording Ġto Ġthis Ġweight . ĊĠĠĠĠ Ġ* ĠWhen Ġ[ fill ] Ġis Ġtrue , Ġthe Ġelement Ġwill Ġbe Ġforced Ġto Ġocc upy Ġthe Ġwhole Ġheight Ġallocated Ġto Ġit . ĊĠĠĠĠ Ġ* ĠOtherwise , Ġthe Ġelement Ġis Ġallowed Ġto Ġbe Ġsmaller Ġ- Ġthis Ġwill Ġresult Ġin Ġ[ Column ] Ġbeing Ġsmaller , ĊĠĠĠĠ Ġ* Ġas Ġthe Ġunused Ġallocated Ġheight Ġwill Ġnot Ġbe Ġre distributed Ġto Ġother Ġs iblings . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ param Ġweight ĠThe Ġpro portional Ġheight Ġto Ġgive Ġto Ġthis Ġelement , Ġas Ġrelated Ġto Ġthe Ġtotal Ġof ĊĠĠĠĠ Ġ* Ġall Ġweighted Ġs iblings . ĠMust Ġbe Ġpositive . ĊĠĠĠĠ Ġ* Ġ@ param Ġfill ĠWhen Ġ` true `, Ġthe Ġelement Ġwill Ġocc upy Ġthe Ġwhole Ġheight Ġallocated . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ sample Ġandroidx . compose . foundation . layout . samples . Simple Column ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġfun ĠModifier . weight ( ĊĠĠĠĠĠĠĠ Ġ/*@ Float Range ( from Ġ= Ġ 0 . 0 , Ġfrom Inclusive Ġ= Ġfalse ) */ ĊĠĠĠĠĠĠĠ Ġweight : ĠFloat , ĊĠĠĠĠĠĠĠ Ġfill : ĠBoolean Ġ= Ġtrue ĊĠĠĠ Ġ): ĠModifier ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠAlign Ġthe Ġelement Ġh orizontally Ġwithin Ġthe Ġ[ Column ]. ĠThis Ġalignment Ġwill Ġhave Ġpriority Ġover ĊĠĠĠĠ Ġ* Ġthe Ġ[ Column ]' s Ġ` horizontal Alignment ` Ġparameter . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠExample Ġusage : ĊĠĠĠĠ Ġ* Ġ@ sample Ġandroidx . compose . foundation . layout . samples . Simple Align In Column ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġfun ĠModifier . align ( alignment : ĠAlignment . Horizontal ): ĠModifier ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠPosition Ġthe Ġelement Ġh orizontally Ġsuch Ġthat Ġits Ġ[ alignment Line ] Ġalign s Ġwith Ġsibling Ġelements ĊĠĠĠĠ Ġ* Ġalso Ġconfigured Ġto Ġ[ align By ]. Ġ[ align By ] Ġis Ġa Ġform Ġof Ġ[ align ], ĊĠĠĠĠ Ġ* Ġso Ġboth Ġmodifiers Ġwill Ġnot Ġwork Ġtogether Ġif Ġspecified Ġfor Ġthe Ġsame Ġlayout . ĊĠĠĠĠ Ġ* ĠWith in Ġa Ġ[ Column ], Ġall Ġcomponents Ġwith Ġ[ align By ] Ġwill Ġalign Ġh orizontally Ġusing ĊĠĠĠĠ Ġ* Ġthe Ġspecified Ġ[ Vertical Alignment Line ] s Ġor Ġvalues Ġprovided Ġusing Ġthe Ġother ĊĠĠĠĠ Ġ* Ġ[ align By ] Ġoverload , Ġform ing Ġa Ġsibling Ġgroup . ĊĠĠĠĠ Ġ* ĠAt Ġleast Ġone Ġelement Ġof Ġthe Ġsibling Ġgroup Ġwill Ġbe Ġplaced Ġas Ġit Ġhad Ġ[ Alignment . Start ] Ġalign ĊĠĠĠĠ Ġ* Ġin Ġ[ Column ], Ġand Ġthe Ġalignment Ġof Ġthe Ġother Ġs iblings Ġwill Ġbe Ġthen Ġdetermined Ġsuch Ġthat ĊĠĠĠĠ Ġ* Ġthe Ġalignment Ġlines Ġcoin c ide . ĠNote Ġthat Ġif Ġonly Ġone Ġelement Ġin Ġa Ġ[ Column ] Ġhas Ġthe ĊĠĠĠĠ Ġ* Ġ[ align By ] Ġmodifier Ġspecified Ġthe Ġelement Ġwill Ġbe Ġposition ed ĊĠĠĠĠ Ġ* Ġas Ġif Ġit Ġhad Ġ[ Alignment . Start ] Ġalign . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠExample Ġusage : ĊĠĠĠĠ Ġ* Ġ@ sample Ġandroidx . compose . foundation . layout . samples . Simple Relative ToS iblings In Column ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġfun ĠModifier . align By ( alignment Line : ĠVertical Alignment Line ): ĠModifier ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠPosition Ġthe Ġelement Ġh orizontally Ġsuch Ġthat Ġthe Ġalignment Ġline Ġfor Ġthe Ġcontent Ġas ĊĠĠĠĠ Ġ* Ġdetermined Ġby Ġ[ alignment Line Block ] Ġalign s Ġwith Ġsibling Ġelements Ġalso Ġconfigured Ġto ĊĠĠĠĠ Ġ* Ġ[ align By ]. Ġ[ align By ] Ġis Ġa Ġform Ġof Ġ[ align ], Ġso Ġboth Ġmodifiers ĊĠĠĠĠ Ġ* Ġwill Ġnot Ġwork Ġtogether Ġif Ġspecified Ġfor Ġthe Ġsame Ġlayout . ĊĠĠĠĠ Ġ* ĠWith in Ġa Ġ[ Column ], Ġall Ġcomponents Ġwith Ġ[ align By ] Ġwill Ġalign Ġh orizontally Ġusing ĊĠĠĠĠ Ġ* Ġthe Ġspecified Ġ[ Vertical Alignment Line ] s Ġor Ġvalues Ġobtained Ġfrom Ġ[ alignment Line Block ], ĊĠĠĠĠ Ġ* Ġform ing Ġa Ġsibling Ġgroup . ĊĠĠĠĠ Ġ* ĠAt Ġleast Ġone Ġelement Ġof Ġthe Ġsibling Ġgroup Ġwill Ġbe Ġplaced Ġas Ġit Ġhad Ġ[ Alignment . Start ] Ġalign ĊĠĠĠĠ Ġ* Ġin Ġ[ Column ], Ġand Ġthe Ġalignment Ġof Ġthe Ġother Ġs iblings Ġwill Ġbe Ġthen Ġdetermined Ġsuch Ġthat ĊĠĠĠĠ Ġ* Ġthe Ġalignment Ġlines Ġcoin c ide . ĠNote Ġthat Ġif Ġonly Ġone Ġelement Ġin Ġa Ġ[ Column ] Ġhas Ġthe ĊĠĠĠĠ Ġ* Ġ[ align By ] Ġmodifier Ġspecified Ġthe Ġelement Ġwill Ġbe Ġposition ed ĊĠĠĠĠ Ġ* Ġas Ġif Ġit Ġhad Ġ[ Alignment . Start ] Ġalign . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* ĠExample Ġusage : ĊĠĠĠĠ Ġ* Ġ@ sample Ġandroidx . compose . foundation . layout . samples . Simple Relative ToS iblings ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġfun ĠModifier . align By ( alignment Line Block : Ġ( Measured ) Ġ-> ĠInt ): ĠModifier Ċ } Ċ Ċ internal Ġobject ĠColumn Scope Instance Ġ: ĠColumn Scope Ġ{ ĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġoverride Ġfun ĠModifier . weight ( weight : ĠFloat , Ġfill : ĠBoolean ): ĠModifier Ġ{ ĊĠĠĠĠĠĠĠ Ġrequire ( weight Ġ> Ġ 0 . 0 ) Ġ{ Ġ" invalid Ġweight Ġ$ weight ; Ġmust Ġbe Ġgreater Ġthan Ġzero " Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġthis . then ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Weight Impl ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġweight Ġ= Ġweight , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfill Ġ= Ġfill , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinspector Info Ġ= Ġdebug Inspector Info Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" weight " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġweight ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperties [" weight "] Ġ= Ġweight ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproperties [" fill "] Ġ= Ġfill ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġoverride Ġfun ĠModifier . align ( alignment : ĠAlignment . Horizontal ) Ġ= Ġthis . then ( ĊĠĠĠĠĠĠĠ ĠHorizontal Align Modifier ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhorizontal Ġ= Ġalignment , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinspector Info Ġ= Ġdebug Inspector Info Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" align " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġalignment ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġoverride Ġfun ĠModifier . align By ( alignment Line : ĠVertical Alignment Line ) Ġ= Ġthis . then ( ĊĠĠĠĠĠĠĠ ĠS iblings Aligned Modifier . With Alignment Line ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġalignment Line Ġ= Ġalignment Line , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinspector Info Ġ= Ġdebug Inspector Info Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" align By " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġalignment Line ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ Stable ĊĠĠĠ Ġoverride Ġfun ĠModifier . align By ( alignment Line Block : Ġ( Measured ) Ġ-> ĠInt ) Ġ= Ġthis . then ( ĊĠĠĠĠĠĠĠ ĠS iblings Aligned Modifier . With Alignment Line Block ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġblock Ġ= Ġalignment Line Block , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinspector Info Ġ= Ġdebug Inspector Info Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" align By " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ= Ġalignment Line Block ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ } Ċ