Core, Doc: Fix links for Point, Rect and Size.

This commit is contained in:
Zbigniew Rębacz 2025-12-28 02:25:36 +01:00
parent ff00772320
commit c5993a105a
8 changed files with 394 additions and 296 deletions

View file

@ -63,7 +63,7 @@ struct Size_ : Moveable< Size_<T> > {
Size_() : cx(0), cy(0) {}
Size_(T cx, T cy) : cx(cx), cy(cy) {}
Size_(const Size_<int>& sz) : cx((T)sz.cx), cy((T)sz.cy) {}
Size_(const Size_<int>& sz) : cx((T)sz.cx), cy((T)sz.cy) {}
Size_(const Size_<int16>& sz) : cx((T)sz.cx), cy((T)sz.cy) {}
Size_(const Size_<double>& sz) : cx((T)sz.cx), cy((T)sz.cy) {}
Size_(const Size_<int64>& sz) : cx((T)sz.cx), cy((T)sz.cy) {}

View file

@ -12,9 +12,9 @@ topic "Point";
[{_}%EN-US
[ {{10000@(113.42.0) [s0; [*@7;4 Point`_]]}}&]
[s3; &]
[s1;:noref:%- [@(0.0.255)3 template][3 _<][@(0.0.255)3 class][3 _][*@4;3 T][@(0.0.255)3 >]&]
[s1;:Point`_`:`:struct:%- [@(0.0.255) struct]_[* Point`_]_:_[@(0.0.255) public]_[*@3 Moveable][@(0.0.255) <
]_[* Point`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_>_&]
[s1;%- [@(0.0.255)3 template ][3 <][@(0.0.255)3 class ][*@4;3 T][@(0.0.255)3 >]&]
[s1;:Point`_`:`:struct:%- [@(0.0.255) struct]_[* Point`_ ]: [@(0.0.255) public]_[*@3 Moveable][@(0.0.255) <
][* Point`_][@(0.0.255) <][*@4 T][@(0.0.255) >]>&]
[s0; &]
[s0; [* Point`_] is a generic structure that describes a two dimensional
point object. The horizontal coordinate is represented by [*@(154.0.0) x][@(154.0.0)
@ -25,29 +25,39 @@ of type [*@4 T].&]
[s0; To get a specialized version of [* Point`_], use one of the following:&]
[s0; &]
[s0; [* Point]&]
[s5;:Point`:`:typedef:%- [@(0.0.255) typedef]_[_^Point`_^ Point`_][@(0.0.255) <int>]_[* Point
]&]
[s2; Point with with [* int] coordinates .&]
[s5;:Upp`:`:Point:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) <int>]_[* Point]&]
[s2; Point with with [* int] coordinates. This is the most common variant,
suitable for general`-purpose UI and coordinate systems.&]
[s3; &]
[s4; &]
[s0;%- [* Point16]&]
[s5;:Point16`:`:typedef:%- [@(0.0.255) typedef]_[_^Point`_^ Point`_][@(0.0.255) <][_^int16^ i
[s5;:Upp`:`:Point16:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int16^ i
nt16][@(0.0.255) >]_[* Point16]&]
[s2; Point with with [* int16][@(0.0.255) ]coordinates .&]
[s3; &]
[s4;*@(154.0.0) &]
[s0; [* Point64]&]
[s5;:Point64`:`:typedef:%- [@(0.0.255) typedef]_[_^Point`_^ Point`_][@(0.0.255) <][_^int64^ i
[s5;:Upp`:`:Point64:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ i
nt64][@(0.0.255) >]_[* Point64]&]
[s2; Point with with [* int64][@(0.0.255) ]coordinates .&]
[s3; &]
[s4;*@(154.0.0) &]
[s0;%- [* Pointf]&]
[s5;:Pointf`:`:typedef:%- [@(0.0.255) typedef]_[_^Point`_^ Point`_][@(0.0.255) <double>]_[* P
ointf]&]
[s5;:Upp`:`:Pointf:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) <double>]_[* Pointf]&]
[s2; Point with with [* double][@(0.0.255) ]coordinates .&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0; [* Public typedef Detail]]}}&]
[s3; &]
[s5;:Upp`:`:Point`_`:`:Sz:%- [@(0.0.255) typedef] Size`_<T> [* Sz]&]
[s0;l288; A Size[* `_] with it`'s coordinates of the same type [*@4 T]
as [* Point`_].&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0; [* Constructor List]]}}&]
[s3;%- &]
[s5;:Point`_`:`:Point`_`(`):%- [* Point`_]()&]
@ -58,8 +68,8 @@ x and y, set to 0. This places the point at the origin (0,0).&]
sZero()] method on such a [* Point`_] object will return true.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:Point`_`(const Value`&`):%- [* Point`_]([@(0.0.255) const]_[_^Value^ Value][@(0.0.255) `&
]_[*@3 src])&]
[s5;:Point`_`:`:Point`_`(const Value`&`):%- [* Point`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Value`_en`-us`#Value`:`:class^ V
alue][@(0.0.255) `&]_[*@3 src])&]
[s2; Default copy constructor.&]
[s3; &]
[s4;%- &]
@ -75,8 +85,9 @@ t`_][@(0.0.255) <int>`&]_[*@3 pt])&]
][*@3 sz].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:Point`_`(const Point`_`<short`>`&`):%- [* Point`_]([@(0.0.255) const]_[* Po
int`_][@(0.0.255) <short>`&]_[*@3 pt])&]
[s5;:Point`_`:`:Point`_`(const Point`_`<int16`>`&`):%- [* Point`_]([@(0.0.255) const]_[* Po
int`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int16^ i
nt16][@(0.0.255) >`&]_[*@3 pt])&]
[s2; Creates a [%-* Point`_ ]object and initializes it with a [%-* Point16
][*@3 sz].&]
[s3; &]
@ -88,19 +99,20 @@ oint`_][@(0.0.255) <double>`&]_[*@3 pt])&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:Point`_`(const Point`_`<int64`>`&`):%- [* Point`_]([@(0.0.255) const]_[* Po
int`_][@(0.0.255) <][_^int64^ int64][@(0.0.255) >`&]_[*@3 pt])&]
int`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ i
nt64][@(0.0.255) >`&]_[*@3 pt])&]
[s2; Creates a [%-* Point`_ ]object and initializes it with a [%-* Point64
][%-*@3 sz].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:Point`_`(const Size`_`<T`>`&`):%- [* Point`_]([@(0.0.255) const]_[_^Size`_^ S
[s5;:Point`_`:`:Point`_`(const Size`_`<T`>`&`):%- [* Point`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][*@4 T][@(0.0.255) >`&]_[*@3 sz])&]
[s2; Creates a [%-* Point`_ ]object and initializes it with a [* Size]
[%-*@3 sz].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:Point`_`(const Nuller`&`):%- [* Point`_]([@(0.0.255) const]_[_^Nuller^ Null
er][@(0.0.255) `&])&]
[s5;:Point`_`:`:Point`_`(const Nuller`&`):%- [* Point`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Nuller`_en`-us`#Upp`:`:Nuller^ N
uller][@(0.0.255) `&])&]
[s2; Creates a [%-* Point`_ ]object and initializes with [* Null].&]
[s3; &]
[s0; &]
@ -143,93 +155,104 @@ onst]&]
[s2; Returns the hash value of the point.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:ToString`(`)const:%- [_^String^ String]_[* ToString]()_[@(0.0.255) const]&]
[s5;:Point`_`:`:ToString`(`)const:%- [_^topic`:`/`/Core`/src`/String`_en`-us`#String`:`:class^ S
tring]_[* ToString]()_[@(0.0.255) const]&]
[s2; Returns the [* String] representation of the point.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`+`=`(Point`_`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`+
`=]([_^Point`_^ Point`_]_[*@3 p])&]
[s5;:Point`_`:`:operator`+`=`(Point`_`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`+`=]([_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_[*@3 p])&]
[s2; Increases [* x] with [*@3 p]`'s horizontal [%- coordinate ]and [* y]
with [*@3 p]`'s vertical [%- coordinate].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`+`=`(Point`_`:`:Sz`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* ope
rator`+`=]([_^Size`_^ Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s5;:Point`_`:`:operator`+`=`(Point`_`:`:Sz`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`+`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s2; Increases [* x ]with [*@3 p]`'s horizontal dimension and [* y] with
[*@3 p]`'s vertical dimension.&]
[s0; &]
[s4;%- &]
[s5;:Point`_`:`:operator`+`=`(T`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`+`=]([*@4 T
]_[*@3 t])&]
[s5;:Point`_`:`:operator`+`=`(T`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`+`=]([*@4 T]_[*@3 t])&]
[s2; Increases both [%- coordinates ]with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`-`=`(Point`_`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`-
`=]([_^Point`_^ Point`_]_[*@3 p])&]
[s5;:Point`_`:`:operator`-`=`(Point`_`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`-`=]([_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_[*@3 p])&]
[s2; Decreases [* x] with [*@3 p]`'s horizontal [%- coordinate ]and [* y]
with [*@3 p]`'s vertical [%- coordinate].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`-`=`(Point`_`:`:Sz`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* ope
rator`-`=]([_^Size`_^ Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s5;:Point`_`:`:operator`-`=`(Point`_`:`:Sz`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`-`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s2; [%- Decreases ][* x ]with [*@3 p]`'s horizontal dimension and [* y]
with [*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`-`=`(T`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`-`=]([*@4 T
]_[*@3 t])&]
[s5;:Point`_`:`:operator`-`=`(T`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`-`=]([*@4 T]_[*@3 t])&]
[s2; Decreases both [%- coordinates ]with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`*`=`(Point`_`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`*
`=]([_^Point`_^ Point`_]_[*@3 p])&]
[s5;:Point`_`:`:operator`*`=`(Point`_`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`*`=]([_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_[*@3 p])&]
[s2; Multiplies [* x] with [*@3 p]`'s horizontal [%- coordinate ]and [* y]
with [*@3 p]`'s vertical [%- coordinate].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`*`=`(Point`_`:`:Sz`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* ope
rator`*`=]([_^Size`_^ Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s5;:Point`_`:`:operator`*`=`(Point`_`:`:Sz`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`*`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s2; Multiplies [* x ]with [*@3 p]`'s horizontal dimension and [* y] with
[*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`*`=`(T`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`*`=]([*@4 T
]_[*@3 t])&]
[s5;:Point`_`:`:operator`*`=`(T`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`*`=]([*@4 T]_[*@3 t])&]
[s2; Multiplies both dimension with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`/`=`(Point`_`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator/
`=]([_^Point`_^ Point`_]_[*@3 p])&]
[s5;:Point`_`:`:operator`/`=`(Point`_`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator/`=]([_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_[*@3 p])&]
[s2; Divides [* x] with [*@3 p]`'s horizontal [%- coordinate ]and [* y] with
[*@3 p]`'s vertical [%- coordinate].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`/`=`(Point`_`:`:Sz`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* ope
rator/`=]([_^Size`_^ Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s5;:Point`_`:`:operator`/`=`(Point`_`:`:Sz`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator/`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s2; Divides [* x ]with [*@3 p]`'s horizontal dimension and [* y] with
[*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`/`=`(T`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator/`=]([*@4 T
]_[*@3 t])&]
[s5;:Point`_`:`:operator`/`=`(T`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator/`=]([*@4 T]_[*@3 t])&]
[s2; Divides both coordinates with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`<`<`=`(int`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator<<`=
]([@(0.0.255) int]_[*@3 sh])&]
[s5;:Point`_`:`:operator`<`<`=`(int`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator<<`=]([@(0.0.255) int]_[*@3 sh])&]
[s2; Shift both coordinates left by [*@3 sh].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`>`>`=`(int`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator>>`=
]([@(0.0.255) int]_[*@3 sh])&]
[s5;:Point`_`:`:operator`>`>`=`(int`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator>>`=]([@(0.0.255) int]_[*@3 sh])&]
[s2; Shift both coordinates right by [*@3 sh].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`+`+`(`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`+`+]()&]
[s5;:Point`_`:`:operator`+`+`(`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`+`+]()&]
[s2; Increments both coordinates.&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:operator`-`-`(`):%- [_^Point`_^ Point`_][@(0.0.255) `&]_[* operator`-`-]()&]
[s5;:Point`_`:`:operator`-`-`(`):%- [_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) `&]_[* operator`-`-]()&]
[s2; Decrements both [%- coordinates].&]
[s3; &]
[s4;%- &]
@ -237,120 +260,145 @@ rator/`=]([_^Size`_^ Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_[*@3 p])&]
[s2; Returns a conversion of the point to [* Value].&]
[s3; &]
[s4;%- &]
[s5;:Point`_`:`:Serialize`(Stream`&`):%- [@(0.0.255) void]_[* Serialize]([_^Stream^ Stream][@(0.0.255) `&
]_[*@3 s])&]
[s5;:Point`_`:`:Serialize`(Stream`&`):%- [@(0.0.255) void]_[* Serialize]([_^topic`:`/`/Core`/src`/Stream`_en`-us`#Stream`:`:class^ S
tream][@(0.0.255) `&]_[*@3 s])&]
[s2; Serializes the point to a stream [*@(141.42.0) s].&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0; [* Friend List]]}}&]
[s3; &]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_operato
r`+[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 p][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`+[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(64) _][@3 p][@(64) )]&]
[s2; Returns an unmodified point [%-*@3 s].&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_operato
r`-[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 p][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`-[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 p][@(64) )]&]
[s2; Returns a negated point [%-*@3 s].&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Poi
nt`_]_operator`+[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`,`:`:Point`_`:`:Sz`):%- friend_[^`:`:Point`_^ P
oint`_]_operator`+[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^topic`:`/`/Core`/src`/Size`$en`-us^@(64) Size`_][@(64) <][@4 T][@(64) >_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`,T`):%- friend_[^`:`:Point`_^ Point`_]_oper
ator`+[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , T_][@3 t][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(T`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_oper
ator`+[@(64) (T_][@3 t][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`:`:Sz`,`:`:Point`_`):%- friend_[^topic`:`/`/Core`/src`/Size`$en`-us^ S
ize`_]<[@4 T][@(64) >_]operator`+[@(64) (][^topic`:`/`/Core`/src`/Size`$en`-us^@(64) Size
`_][@(64) <][@4 T][@(64) >_][@3 a][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`+[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`,`:`:Point`_`:`:Sz`):%- [@(0.0.255) friend]_
[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ Point`_]_operator`+[@(64) (
][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^@(64) Size`_][@(64) <][@4 T][@(64) >
_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`,T`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`+[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , T_][@3 t][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(T`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`+[@(64) (T_][@3 t][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`+`(`:`:Point`_`:`:Sz`,`:`:Point`_`):%- [@(0.0.255) friend]_
[^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ Size`_]<[@4 T][@(64) >_]operato
r`+[@(64) (][^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^@(64) Size`_][@(64) <
][@4 T][@(64) >_][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2; Returns the result of the addition of two [* Point`_ ]values,
a [* Point`_ ]with a [* Size`_ ]or a [* Point`_ ]with single value.&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`,`:`:Point`_`):%- friend_[^topic`:`/`/Core`/src`/Size`$en`-us^ S
ize`_]<[@4 T][@(64) >_]operator`-[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`,`:`:Point`_`:`:Sz`):%- friend_[^`:`:Point`_^ P
oint`_]_operator`-[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^topic`:`/`/Core`/src`/Size`$en`-us^@(64) Size`_][@(64) <][@4 T][@(64) >_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`,T`):%- friend_[^`:`:Point`_^ Point`_]_oper
ator`-[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , T_][@3 t][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`:`:Sz`,`:`:Point`_`):%- friend_[^topic`:`/`/Core`/src`/Size`$en`-us^ S
ize`_]<[@4 T][@(64) >_]operator`-[@(64) (][^topic`:`/`/Core`/src`/Size`$en`-us^@(64) Size
`_][@(64) <][@4 T][@(64) >_][@3 a][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_]<[@4 T][@(64) >_]operator`-[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`,`:`:Point`_`:`:Sz`):%- [@(0.0.255) friend]_
[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ Point`_]_operator`-[@(64) (
][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^@(64) Size`_][@(64) <][@4 T][@(64) >
_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`,T`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`-[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , T_][@3 t][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`-`(`:`:Point`_`:`:Sz`,`:`:Point`_`):%- [@(0.0.255) friend]_
[^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ Size`_]<[@4 T][@(64) >_]operato
r`-[@(64) (][^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^@(64) Size`_][@(64) <
][@4 T][@(64) >_][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2; Returns the result of the subtraction of two [* Point`_ ]values,
a [* Point`_ ]with a [* Size`_] or a [* Point`_ ]with single value.&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`*`(`:`:Point`_`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Poi
nt`_]_operator`*[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`*`(`:`:Point`_`,T`):%- friend_[^`:`:Point`_^ Point`_]_oper
ator`*[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , T_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`*`(T`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_oper
ator`*[@(64) (T_][@3 a][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`*`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`*[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`*`(`:`:Point`_`,T`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`*[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , T_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`*`(T`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator`*[@(64) (T_][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2; Returns the result of the multiplication of two [* Point`_ ]values
or[* ]a [* Point`_ ]with single value.&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`/`(`:`:Point`_`,`:`:Point`_`:`:Sz`):%- friend_[^`:`:Point`_^ P
oint`_]_operator/[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^`:`:Point`_`:`:Sz^@(64) Sz][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`/`(`:`:Point`_`,T`):%- friend_[^`:`:Point`_^ Point`_]_oper
ator/[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , T_][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`/`(`:`:Point`_`,`:`:Point`_`:`:Sz`):%- [@(0.0.255) friend]_
[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ Point`_]_operator/[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Upp`:`:Point`_`:`:Sz^@(64) S
z][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`/`(`:`:Point`_`,T`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator/[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , T_][@3 b][@(64) )]&]
[s2; Returns the result of the division of a [* Point`_ ]with a [* Size`_]
or a [* Point`_ ]with single value.&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`<`<`(`:`:Point`_`,int`):%- friend_[^`:`:Point`_^ Point`_]_
operator<<[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][@(0.0.255) int][@(64) _][@3 sh][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`<`<`(`:`:Point`_`,int`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator<<[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][@(0.0.255) int][@(64) _][@3 sh][@(64) )]&]
[s2; Returns the result of left shifting [*@3 a] by [*@3 sh].&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`>`>`(`:`:Point`_`,int`):%- friend_[^`:`:Point`_^ Point`_]_
operator>>[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][@(0.0.255) int][@(64) _][@3 sh][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`>`>`(`:`:Point`_`,int`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_operator>>[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][@(0.0.255) int][@(64) _][@3 sh][@(64) )]&]
[s2; Returns the result of right shifting [*@3 a] by [*@3 sh].&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`=`=`(`:`:Point`_`,`:`:Point`_`):%- friend_[@(0.0.255) bool
][@(64) _]operator`=`=[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`=`=`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[@(0.0.255) b
ool][@(64) _]operator`=`=[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2; Returns [* true ]if [*@3 a ]and [*@3 b ]have their respective coordinates
equal, [* false ]otherwise.&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:operator`!`=`(`:`:Point`_`,`:`:Point`_`):%- friend_[@(0.0.255) bool
][@(64) _]operator!`=[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) ,
][^`:`:Point`_^@(64) Point`_][@(64) _][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:operator`!`=`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[@(0.0.255) b
ool][@(64) _]operator!`=[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2; Returns [* true ]if [*@3 a ]and [*@3 b ]have at least an unequal coordinates
, [* false ]otherwise.&]
[s3; &]
[s4; &]
[s5;:`:`:Point`_`:`:min`(`:`:Point`_`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_m
in[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _
][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:min`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_min[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) Po
int`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2;%- [%% Returns a ][%%* Point`_][%% with it`'s coordinates equaling
the minimum of the respective coordinates between ][*@3 a][@3 ]and[%%
][*@3 b].&]
[s3;%- &]
[s4;%- &]
[s5;:`:`:Point`_`:`:max`(`:`:Point`_`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_m
ax[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _
][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:max`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_max[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) Po
int`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2;%- [%% Returns a ][%%* Point`_][%% with it`'s coordinates equaling
the maximum of the respective coordinates between ][*@3 a][@3 ]and[%%
][*@3 b].&]
[s3;%- &]
[s4; &]
[s5;:`:`:Point`_`:`:Nvl`(`:`:Point`_`,`:`:Point`_`):%- friend_[^`:`:Point`_^ Point`_]_N
vl[@(64) (][^`:`:Point`_^@(64) Point`_][@(64) _][@3 a][@(64) , ][^`:`:Point`_^@(64) Point`_][@(64) _
][@3 b][@(64) )]&]
[s5;:`:`:Point`_`:`:Nvl`(`:`:Point`_`,`:`:Point`_`):%- [@(0.0.255) friend]_[^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_]_Nvl[@(64) (][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) Po
int`_][@(64) _][@3 a][@(64) , ][^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^@(64) P
oint`_][@(64) _][@3 b][@(64) )]&]
[s2; Returns [%-*@3 b] if [%-*@3 a] is Null, [%-*@3 a] otherwise.&]
[s3; &]
[s0; ]]

View file

@ -1,5 +1,4 @@
topic "Primitive Data Types";
[2 $$0,0#00000000000000000000000000000000:Default]
[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
[l288;2 $$2,2#27521748481378242620020725143825:desc]
[0 $$3,0#96390100711032703541132217272105:end]
@ -9,61 +8,62 @@ topic "Primitive Data Types";
[l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param]
[i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam]
[b42;2 $$9,9#13035079074754324216151401829390:normal]
[2 $$0,0#00000000000000000000000000000000:Default]
[{_}
[ {{10000@(113.42.0) [s0;%% [*@7;4 Primitive Data Types]]}}&]
[s4; &]
[s0; U`+`+ Core defines several primitive data types. Below is the
complete list along with a brief description.&]
[s1;O_; &]
[s5;:Upp`:`:byte`:`:typedef: [* byte]&]
[s5;:Upp`:`:byte: [* byte]&]
[s2;%% The [/ byte ]is a 8`-bit (byte) unsigned integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:int8`:`:typedef: [* int8]&]
[s5;:Upp`:`:int8: [* int8]&]
[s2;%% The [/ int8 ]is a 8`-bit signed integer.&]
[s3;%% &]
[s4; &]
[s5;:Upp`:`:uint8`:`:typedef: [* uint8]&]
[s5;:Upp`:`:uint8: [* uint8]&]
[s2;%% The [/ int8 ]is a 8`-bit unsigned integer.&]
[s0; &]
[s4; &]
[s5;:Upp`:`:word`:`:typedef: [* word]&]
[s5;:Upp`:`:word: [* word]&]
[s2;%% The [/ word ]is a 16`-bit unsigned integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:int16`:`:typedef: [* int16]&]
[s5;:Upp`:`:int16: [* int16]&]
[s2;%% The [/ int16 ]is a 16`-bit signed integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:uint16`:`:typedef: [* uint16]&]
[s5;:Upp`:`:uint16: [* uint16]&]
[s2;%% The [/ uint16] is a 16`-bit unsigned integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:dword`:`:typedef: [* dword]&]
[s5;:Upp`:`:dword: [* dword]&]
[s2;%% The [/ dword ](double word)[/ ]is a 32`-bit unsigned integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:int32`:`:typedef: [* int32]&]
[s5;:Upp`:`:int32: [* int32]&]
[s2;%% The [/ int32] is a 32`-bit signed integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:uint32`:`:typedef: [* uint32]&]
[s5;:Upp`:`:uint32: [* uint32]&]
[s2;%% The [/ uint32] is a 32`-bit unsigned integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:wchar`:`:typedef: [* wchar]&]
[s5;:Upp`:`:wchar: [* wchar]&]
[s2;%% Wide character.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:int64`:`:typedef: [* int64]&]
[s5;:Upp`:`:int64: [* int64]&]
[s2;%% The [/ int64] is a 64`-bit signed integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:uint64`:`:typedef: [* uint64]&]
[s5;:Upp`:`:uint64: [* uint64]&]
[s2;%% The [/ uint64] is a 64`-bit unsigned integer.&]
[s3; &]
[s4; &]
[s5;:Upp`:`:qword`:`:typedef: [* qword]&]
[s5;:Upp`:`:qword: [* qword]&]
[s2;%% The [/ qword ](quad word) is a 64`-bit unsigned integer.&]
[s3; &]
[s0;%% ]]

View file

@ -12,9 +12,9 @@ topic "Rect";
[{_}
[ {{10000@(113.42.0) [s0;%% [*@7;4 Rect`_]]}}&]
[s3;%% &]
[s0; [@(0.0.255)3 template][3 _<][@(0.0.255)3 class][3 _][*@4;3 T][@(0.0.255)3 >]&]
[s1;:Rect`_`:`:struct: [@(0.0.255) struct]_[* Rect`_]_:_[@(0.0.255) public]_[*@3 Moveable][@(0.0.255) <
]_[* Rect`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_>_&]
[s0; [@(0.0.255)3 template ][3 <][@(0.0.255)3 class ][*@4;3 T][@(0.0.255)3 >]&]
[s1;:Rect`_`:`:struct: [@(0.0.255) struct]_[* Rect`_ ]: [@(0.0.255) public]_[*@3 Moveable][@(0.0.255) <
][* Rect`_][@(0.0.255) <][*@4 T][@(0.0.255) >]>&]
[s0;%% &]
[s0; [%%* Rect`_][%% is a generic structure describing a rectangular
area defined by the coordinates of the upper left corner, left
@ -25,37 +25,42 @@ and bottom. All coordinates are of type ][*@4 T.]&]
[s0;%% To get a specialized version of [* Size`_], use one of the following:&]
[s0; &]
[s0; [* Rect]&]
[s5;:Rect`:`:typedef: [@(0.0.255) typedef]_[_^Rect`_^ Rect`_][@(0.0.255) <int>]_[* Rect]&]
[s2;%% [* Rect`_] with [%-* int] coordinates.&]
[s5;:Upp`:`:Rect: [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) <int>]_[* Rect]&]
[s2;%% [* Rect`_] with [%-* int] coordinates. This is the most common
variant, suitable for general`-purpose UI and coordinate systems.&]
[s3; &]
[s4; &]
[s0; [* Rect16]&]
[s5;:Rect16`:`:typedef:~~~128; [@(0.0.255) typedef]_[_^Rect`_^ Rect`_][@(0.0.255) <][_^int16^ i
[s5;:Upp`:`:Rect16:~~~128; [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int16^ i
nt16][@(0.0.255) >]_[* Rect16]&]
[s2;%% [* Rect`_] with [%-* int16] coordinates.&]
[s3; &]
[s4; &]
[s0; [* Rect64]&]
[s5;:Rect64`:`:typedef: [@(0.0.255) typedef]_[_^Rect`_^ Rect`_][@(0.0.255) <][_^int64^ int64][@(0.0.255) >
]_[* Rect64]&]
[s5;:Upp`:`:Rect64: [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ i
nt64][@(0.0.255) >]_[* Rect64]&]
[s2;%% [* Rect`_] with [%-* int64] coordinates.&]
[s3; &]
[s4; &]
[s0; [* Rectf]&]
[s5;:Rectf`:`:typedef: [@(0.0.255) typedef]_[_^Rect`_^ Rect`_][@(0.0.255) <double>]_[* Rectf]&]
[s5;:Upp`:`:Rectf: [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) <double>]_[* Rectf]&]
[s2;%% [* Rect`_] with [%-* double] coordinates.&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0;%% [* Public typedef Detail]]}}&]
[s3;%% &]
[s5;:Rect`_`:`:Pt`:`:typedef: [@(0.0.255) typedef]_[_^Point`_^ Point`_][@(0.0.255) <]T[@(0.0.255) >
]_[* Pt]&]
[s5;:Upp`:`:Rect`_`:`:Pt: [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) <]T[@(0.0.255) >]_[* Pt]&]
[s2;%% A [* Point`_] with it`'s coordinates of the same type [*@4 T]
as [* Rect`_].&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:Sz`:`:typedef: [@(0.0.255) typedef]_[_^Size`_^ Size`_][@(0.0.255) <]T[@(0.0.255) >
]_[* Sz]&]
[s5;:Upp`:`:Rect`_`:`:Sz: [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <]T[@(0.0.255) >]_[* Sz]&]
[s2;%% A [* Size`_] with it`'s coordinates of the same type [*@4 T] as
[* Rect`_].&]
[s3; &]
@ -71,8 +76,8 @@ or height, sitting right at the (0,0) origin.&]
sEmpty()] method on such a [* Rect`_] object will return true.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(const Value`&`): [* Rect`_]([@(0.0.255) const]_[_^Value^ Value][@(0.0.255) `&
]_[*@3 src])&]
[s5;:Rect`_`:`:Rect`_`(const Value`&`): [* Rect`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Value`_en`-us`#Value`:`:class^ V
alue][@(0.0.255) `&]_[*@3 src])&]
[s2;%% Default copy constructor.&]
[s3;%% &]
[s4; &]
@ -82,20 +87,21 @@ sEmpty()] method on such a [* Rect`_] object will return true.&]
[%-*@3 l][%-* ,] [%-*@3 t][%-* ,] [%-*@3 r][%- and] [%-*@3 b].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(Rect`_`:`:Pt`,Rect`_`:`:Pt`): [* Rect`_]([_^Rect`_`:`:Pt^ Pt]_[*@3 a
], [_^Rect`_`:`:Pt^ Pt]_[*@3 b])&]
[s5; [* Rect`_]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ Pt]_[*@3 a],
[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ Pt]_[*@3 b])&]
[s2;%% Creates a [* Rect`_] and initializes it`'s upper left corner
with [%-*@3 a ]and it`'s bottom right corner with [%-*@3 b].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(Rect`_`:`:Pt`,Rect`_`:`:Sz`): [* Rect`_]([_^Rect`_`:`:Pt^ Pt]_[*@3 a
], [_^Rect`_`:`:Sz^ Sz]_[*@3 sz])&]
[s5;:Rect`_`:`:Rect`_`(Rect`_`:`:Pt`,Rect`_`:`:Sz`): [* Rect`_]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[*@3 a], [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ Sz]_[*@3 sz])&]
[s2;%% Creates a [* Rect`_] and initializes it`'s upper left corner
with [%-*@3 a ]and it`'s bottom right corner with [*@3 a ][* `+][*@3
sz].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(Rect`_`:`:Sz`): [* Rect`_]([_^Rect`_`:`:Sz^ Sz]_[*@3 sz])&]
[s5;:Rect`_`:`:Rect`_`(Rect`_`:`:Sz`): [* Rect`_]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ S
z]_[*@3 sz])&]
[s2;%% Creates a [* Rect`_] and initializes it`'s upper left corner
with [%-* (0, 0)][%-*@3 ]and it`'s bottom right corner with [*@3 sz].&]
[s3;%% &]
@ -106,14 +112,16 @@ int>`&]_[*@3 r])&]
][%-*@3 r].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(const Rect`_`<short`>`&`): [* Rect`_]([@(0.0.255) const]_[* Rect`_][@(0.0.255) <
short>`&]_[*@3 r])&]
[s5;:Rect`_`:`:Rect`_`(const Rect`_`<int16`>`&`): [* Rect`_]([@(0.0.255) const]_[* Rect`_][@(0.0.255) <
][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int16^ int16][@(0.0.255) >
`&]_[*@3 r])&]
[s2;%% Creates a [* Rect`_] and initializes it with [%-* Rect16][%-@(0.0.255)
][%-*@3 r].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(const Rect`_`<int64`>`&`): [* Rect`_]([@(0.0.255) const]_[* Rect`_][@(0.0.255) <
][_^int64^ int64][@(0.0.255) >`&]_[*@3 r])&]
][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ int64][@(0.0.255) >
`&]_[*@3 r])&]
[s2;%% Creates a [* Rect`_] and initializes it with [%-* Rect64][%-@(0.0.255)
][%-*@3 r].&]
[s3;%% &]
@ -124,8 +132,8 @@ double>`&]_[*@3 r])&]
][%-*@3 r].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Rect`_`(const Nuller`&`): [* Rect`_]([@(0.0.255) const]_[_^Nuller^ Nuller][@(0.0.255) `&
])&]
[s5;:Rect`_`:`:Rect`_`(const Nuller`&`): [* Rect`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Nuller`_en`-us`#Upp`:`:Nuller^ N
uller][@(0.0.255) `&])&]
[s2;%% Creates a [* Rect`_] and initializes it with [%-* Null].&]
[s3; &]
[s0; &]
@ -178,75 +186,82 @@ onst]&]
[* top].&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:Size`(`)const: [_^Rect`_`:`:Sz^ Sz]_[* Size]()_[@(0.0.255) const]&]
[s5;:Rect`_`:`:GetSize`(`)const: [_^Rect`_`:`:Sz^ Sz]_[* GetSize]()_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Size`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ S
z]_[* Size]()_[@(0.0.255) const]&]
[s5;:Rect`_`:`:GetSize`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ S
z]_[* GetSize]()_[@(0.0.255) const]&]
[s2;%% Returns a size containing the width and the height of the
rectangle.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:TopLeft`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* TopLeft]()_[@(0.0.255) const]&]
[s5;:Rect`_`:`:TopLeft`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* TopLeft]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the top`-left coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:TopCenter`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* TopCenter]()_[@(0.0.255) const]&]
[s5;:Rect`_`:`:TopCenter`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* TopCenter]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the top`-center coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:TopRight`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* TopRight]()_[@(0.0.255) const]&]
[s5;:Rect`_`:`:TopRight`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* TopRight]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the top`-right coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:CenterLeft`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* CenterLeft]()_[@(0.0.255) const
]&]
[s5;:Rect`_`:`:CenterLeft`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* CenterLeft]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the center`-left coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:CenterPoint`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* CenterPoint]()_[@(0.0.255) con
st]&]
[s5;:Rect`_`:`:CenterPoint`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* CenterPoint]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the coordinates of the center of
the rectangle.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:CenterRight`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* CenterRight]()_[@(0.0.255) con
st]&]
[s5;:Rect`_`:`:CenterRight`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* CenterRight]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the center`-right coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:BottomLeft`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* BottomLeft]()_[@(0.0.255) const
]&]
[s5;:Rect`_`:`:BottomLeft`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* BottomLeft]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the bottom`-left coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:BottomCenter`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* BottomCenter]()_[@(0.0.255) c
onst]&]
[s5;:Rect`_`:`:BottomCenter`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* BottomCenter]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the bottom`-center coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:BottomRight`(`)const: [_^Rect`_`:`:Pt^ Pt]_[* BottomRight]()_[@(0.0.255) con
st]&]
[s5;:Rect`_`:`:BottomRight`(`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* BottomRight]()_[@(0.0.255) const]&]
[s2;%% Returns a point containing the bottom`-right coordinates.&]
[s3; &]
[s4; &]
[s5;:Rect`_`:`:CenterPos`(T`,T`)const: [_^Rect`_`:`:Pt^ Pt]_[* CenterPos]([*@4 T]_[*@3 cx],
[*@4 T]_[*@3 cy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:CenterPos`(T`,T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* CenterPos]([*@4 T]_[*@3 cx], [*@4 T]_[*@3 cy])_[@(0.0.255) const]&]
[s2; [%% Returns the left and top coordinates of an object of sizes
][*@3 cx][%% and ][*@3 cy] that is centered inside the rectangle.&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:CenterPos`(Rect`_`:`:Sz`)const: [_^Rect`_`:`:Pt^ Pt]_[* CenterPos]([_^Rect`_`:`:Sz^ S
z]_[*@3 sz])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:CenterPos`(Rect`_`:`:Sz`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[* CenterPos]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ Sz]_[*@3 s
z])_[@(0.0.255) const]&]
[s2; [%% Returns the left and top coordinates of an object of size
][*@3 sz] that is centered inside the rectangle.&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:CenterRect`(T`,T`)const: [_^Rect`_^ Rect`_]_[* CenterRect]([*@4 T]_[*@3 cx],
[*@4 T]_[*@3 cy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:CenterRect`(T`,T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* CenterRect]([*@4 T]_[*@3 cx], [*@4 T]_[*@3 cy])_[@(0.0.255) const]&]
[s2;%% Return the coordinates of a new rectangle with sizes [%-*@3 cx][%-
and ][%-*@3 cy ]centered inside the rectangle.&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:CenterRect`(Rect`_`:`:Sz`)const: [_^Rect`_^ Rect`_]_[* CenterRect]([_^Rect`_`:`:Sz^ S
z]_[*@3 sz])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:CenterRect`(Rect`_`:`:Sz`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* CenterRect]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ Sz]_
[*@3 sz])_[@(0.0.255) const]&]
[s2;%% Return the coordinates of a new rectangle with size [%-*@3 sz
]centered inside the rectangle.&]
[s3;%% &]
@ -257,19 +272,19 @@ z]_[*@3 sz])_[@(0.0.255) const]&]
[%-*@3 r][%- and] [%-*@3 b].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Set`(Rect`_`:`:Pt`,Rect`_`:`:Pt`): [@(0.0.255) void]_[* Set]([_^Rect`_`:`:Pt^ P
t]_[*@3 a], [_^Rect`_`:`:Pt^ Pt]_[*@3 b])&]
[s5;:Rect`_`:`:Set`(Rect`_`:`:Pt`,Rect`_`:`:Pt`): [@(0.0.255) void]_[* Set]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[*@3 a], [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ Pt]_[*@3 b])&]
[s2;%% Initializes rectangles upper left corner with [%-*@3 a ]and
it`'s bottom right corner with [%-*@3 b].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Set`(Rect`_`:`:Pt`,Rect`_`:`:Sz`): [@(0.0.255) void]_[* Set]([_^Rect`_`:`:Pt^ P
t]_[*@3 a], [_^Rect`_`:`:Sz^ Sz]_[*@3 sz])&]
[s5;:Rect`_`:`:Set`(Rect`_`:`:Pt`,Rect`_`:`:Sz`): [@(0.0.255) void]_[* Set]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Pt^ P
t]_[*@3 a], [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ Sz]_[*@3 sz])&]
[s2;%% Initializes rectangle`'s upper left corner with [%-*@3 a ]and
it`'s bottom right corner with [*@3 a ][* `+][*@3 sz].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Set`(const Rect`_`&`): [@(0.0.255) void]_[* Set]([@(0.0.255) const]_[_^Rect`_^ R
[s5;:Rect`_`:`:Set`(const Rect`_`&`): [@(0.0.255) void]_[* Set]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) `&]_[*@3 r])&]
[s2; [%% Initializes rectangles coordinates with the ones of ][*@3 r.]&]
[s3;%% &]
@ -280,8 +295,8 @@ ect`_][@(0.0.255) `&]_[*@3 r])&]
to [%-*@3 cy].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:SetSize`(Rect`_`:`:Sz`): [@(0.0.255) void]_[* SetSize]([_^Rect`_`:`:Sz^ Sz]_
[*@3 sz])&]
[s5;:Rect`_`:`:SetSize`(Rect`_`:`:Sz`): [@(0.0.255) void]_[* SetSize]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ S
z]_[*@3 sz])&]
[s2;%% Sets the width and height of the rectangle to [%-*@3 sz].&]
[s3;%% &]
[s4; &]
@ -303,8 +318,8 @@ and it`'s bottom coordinate increased.&]
by [%-*@3 dy].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Inflate`(Rect`_`:`:Sz`): [@(0.0.255) void]_[* Inflate]([_^Rect`_`:`:Sz^ Sz]_
[*@3 sz])&]
[s5;:Rect`_`:`:Inflate`(Rect`_`:`:Sz`): [@(0.0.255) void]_[* Inflate]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ S
z]_[*@3 sz])&]
[s2;%% Inflates the rectangle horizontally by the horizontal dimension
of [*@3 sz] and vertically by the vertical one.&]
[s3;%% &]
@ -320,7 +335,8 @@ and [%-*@3 b].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Inflate`(const Rect`_`&`): [@(0.0.255) void]_[* Inflate]([@(0.0.255) const]_
[_^Rect`_^ Rect`_][@(0.0.255) `&]_[*@3 r])&]
[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ Rect`_][@(0.0.255) `&]_[*@3 r])
&]
[s2;%% Inflates the rectangle by [*@3 r.left][%- ,] [%-*@3 r.top][%- ,] [%-*@3 r.right]
and [%-*@3 r.bottom].&]
[s3;%% &]
@ -343,8 +359,8 @@ and it`'s bottom coordinate decreased.&]
by [%-*@3 dy].&]
[s3;%% &]
[s4;%% &]
[s5;:Rect`_`:`:Deflate`(Rect`_`:`:Sz`): [@(0.0.255) void]_[* Deflate]([_^Rect`_`:`:Sz^ Sz]_
[*@3 sz])&]
[s5;:Rect`_`:`:Deflate`(Rect`_`:`:Sz`): [@(0.0.255) void]_[* Deflate]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ S
z]_[*@3 sz])&]
[s2;%% Deflates the rectangle horizontally by the horizontal dimension
of [*@3 sz] and vertically by the vertical one.&]
[s3;%% &]
@ -360,59 +376,66 @@ and [%-*@3 b].&]
[s3;%% &]
[s4;%% &]
[s5;:Rect`_`:`:Deflate`(const Rect`_`&`): [@(0.0.255) void]_[* Deflate]([@(0.0.255) const]_
[_^Rect`_^ Rect`_][@(0.0.255) `&]_[*@3 r])&]
[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ Rect`_][@(0.0.255) `&]_[*@3 r])
&]
[s2;%% Deflates the rectangle by [*@3 r.left][%- ,] [%-*@3 r.top][%- ,] [%-*@3 r.right]
and [%-*@3 r.bottom].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:InflatedHorz`(T`)const: [_^Rect`_^ Rect`_]_[* InflatedHorz]([*@4 T]_[*@3 dx])_
[@(0.0.255) const]&]
[s5;:Rect`_`:`:InflatedHorz`(T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* InflatedHorz]([*@4 T]_[*@3 dx])_[@(0.0.255) const]&]
[s2;%% Returns the result of inflating the rectangle horizontally
by [%-*@3 dx].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:InflatedVert`(T`)const: [_^Rect`_^ Rect`_]_[* InflatedVert]([*@4 T]_[*@3 dy])_
[@(0.0.255) const]&]
[s5;:Rect`_`:`:InflatedVert`(T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* InflatedVert]([*@4 T]_[*@3 dy])_[@(0.0.255) const]&]
[s2;%% Returns the result of inflating the rectangle horizontally
by [%-*@3 dx].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Inflated`(T`,T`)const: [_^Rect`_^ Rect`_]_[* Inflated]([*@4 T]_[*@3 dx],
[*@4 T]_[*@3 dy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(Rect`_`:`:Sz`)const: [_^Rect`_^ Rect`_]_[* Inflated]([_^Rect`_`:`:Sz^ S
z]_[*@3 sz])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(T`)const: [_^Rect`_^ Rect`_]_[* Inflated]([*@4 T]_[*@3 dxy])_[@(0.0.255) c
[s5;:Rect`_`:`:Inflated`(T`,T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Inflated]([*@4 T]_[*@3 dx], [*@4 T]_[*@3 dy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(Rect`_`:`:Sz`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Inflated]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ Sz]_[*@3 s
z])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Inflated]([*@4 T]_[*@3 dxy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(T`,T`,T`,T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Inflated]([*@4 T]_[*@3 l], [*@4 T]_[*@3 t], [*@4 T]_[*@3 r], [*@4 T]_[*@3 b])_[@(0.0.255) c
onst]&]
[s5;:Rect`_`:`:Inflated`(T`,T`,T`,T`)const: [_^Rect`_^ Rect`_]_[* Inflated]([*@4 T]_[*@3 l],
[*@4 T]_[*@3 t], [*@4 T]_[*@3 r], [*@4 T]_[*@3 b])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(const Rect`_`&`)const: [_^Rect`_^ Rect`_]_[* Inflated]([@(0.0.255) c
onst]_[_^Rect`_^ Rect`_][@(0.0.255) `&]_[*@3 q])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Inflated`(const Rect`_`&`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Inflated]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) `&]_[*@3 q])_[@(0.0.255) const]&]
[s2;%% Returns the result of inflating the rectangle with the amount
specified by the respective parameters.&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:DeflatedHorz`(T`)const: [_^Rect`_^ Rect`_]_[* DeflatedHorz]([*@4 T]_[*@3 dx])_
[@(0.0.255) const]&]
[s5;:Rect`_`:`:DeflatedHorz`(T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* DeflatedHorz]([*@4 T]_[*@3 dx])_[@(0.0.255) const]&]
[s2;%% Returns the result of deflating the rectangle horizontally
by [%-*@3 dx].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:DeflatedVert`(T`)const: [_^Rect`_^ Rect`_]_[* DeflatedVert]([*@4 T]_[*@3 dy])_
[@(0.0.255) const]&]
[s5;:Rect`_`:`:DeflatedVert`(T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* DeflatedVert]([*@4 T]_[*@3 dy])_[@(0.0.255) const]&]
[s2;%% Returns the result of deflating the rectangle horizontally
by [%-*@3 dx].&]
[s3;%% &]
[s4; &]
[s5;:Rect`_`:`:Deflated`(T`,T`)const: [_^Rect`_^ Rect`_]_[* Deflated]([*@4 T]_[*@3 dx],
[*@4 T]_[*@3 dy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(Rect`_`:`:Sz`)const: [_^Rect`_^ Rect`_]_[* Deflated]([_^Rect`_`:`:Sz^ S
z]_[*@3 sz])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(T`)const: [_^Rect`_^ Rect`_]_[* Deflated]([*@4 T]_[*@3 dxy])_[@(0.0.255) c
[s5;:Rect`_`:`:Deflated`(T`,T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Deflated]([*@4 T]_[*@3 dx], [*@4 T]_[*@3 dy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(Rect`_`:`:Sz`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Deflated]([_^topic`:`/`/Core`/src`/Rect`_en`-us`#Upp`:`:Rect`_`:`:Sz^ Sz]_[*@3 s
z])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Deflated]([*@4 T]_[*@3 dxy])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(T`,T`,T`,T`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Deflated]([*@4 T]_[*@3 l], [*@4 T]_[*@3 t], [*@4 T]_[*@3 r], [*@4 T]_[*@3 b])_[@(0.0.255) c
onst]&]
[s5;:Rect`_`:`:Deflated`(T`,T`,T`,T`)const: [_^Rect`_^ Rect`_]_[* Deflated]([*@4 T]_[*@3 l],
[*@4 T]_[*@3 t], [*@4 T]_[*@3 r], [*@4 T]_[*@3 b])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(const Rect`_`&`)const: [_^Rect`_^ Rect`_]_[* Deflated]([@(0.0.255) c
onst]_[_^Rect`_^ Rect`_][@(0.0.255) `&]_[*@3 q])_[@(0.0.255) const]&]
[s5;:Rect`_`:`:Deflated`(const Rect`_`&`)const: [_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_]_[* Deflated]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Rect`_en`-us`#Rect`_`:`:struct^ R
ect`_][@(0.0.255) `&]_[*@3 q])_[@(0.0.255) const]&]
[s2;%% Returns the result of deflating the rectangle with the amount
specified by the respective parameters.&]
[s3;%% &]

View file

@ -12,9 +12,9 @@ topic "Size";
[{_}%EN-US
[ {{10000@(113.42.0) [s0; [*@7;4 Size`_]]}}&]
[s3; &]
[s1;:noref:%- [@(0.0.255)3 template][3 _<][@(0.0.255)3 class][3 _][*@4;3 T][@(0.0.255)3 >]&]
[s1;%- [@(0.0.255)3 template ][3 <][@(0.0.255)3 class][3 _][*@4;3 T][@(0.0.255)3 >]&]
[s1;:Size`_`:`:struct:%- [@(0.0.255) struct]_[* Size`_]_:_[@(0.0.255) public]_[*@3 Moveable][@(0.0.255) <
]_[* Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]_>_&]
][* Size`_][@(0.0.255) <][*@4 T][@(0.0.255) >]>&]
[s0;%- &]
[s0; [* Size`_] is a generic structure that describes a two dimensional
size object. The horizontal dimension is represented by [*@(154.0.0) cx][@(154.0.0)
@ -25,26 +25,30 @@ type [*@4 T]. &]
[s0; To get a specialized version of [* Size`_], use one of the following:&]
[s0; &]
[s1;%- [* Size]&]
[s5;:Size`:`:typedef:%- [@(0.0.255) typedef]_[_^Size`_^ Size`_][@(0.0.255) <int>]_[* Size]&]
[s2; Size`_ with with [* int] dimensions.&]
[s5;:Upp`:`:Size:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <int>]_[* Size]&]
[s2; Size`_ with [* int] dimensions. This is the most common variant,
suitable for general`-purpose UI and coordinate systems.&]
[s3; &]
[s4; &]
[s1;%- [* Size16]&]
[s5;:Size16`:`:typedef:%- [@(0.0.255) typedef]_[_^Size`_^ Size`_][@(0.0.255) <][_^int16^ int1
6][@(0.0.255) >]_[* Size16]&]
[s2; Size`_ with with [* int16][@(0.0.255) ]dimensions.&]
[s5;:Upp`:`:Size16:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int16^ i
nt16][@(0.0.255) >]_[* Size16]&]
[s2; Size`_ with [* int16][@(0.0.255) ]dimensions.&]
[s3; &]
[s4;*@(154.0.0) &]
[s1;%- [* Size64]&]
[s5;:Size64`:`:typedef:%- [@(0.0.255) typedef]_[_^Size`_^ Size`_][@(0.0.255) <][_^int64^ int6
4][@(0.0.255) >]_[* Size64]&]
[s2; Size`_ with with [* int64][@(0.0.255) ]dimensions.&]
[s5;:Upp`:`:Size64:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ i
nt64][@(0.0.255) >]_[* Size64]&]
[s2; Size`_ with [* int64][@(0.0.255) ]dimensions.&]
[s3; &]
[s4;*@(154.0.0) &]
[s1;%- [* Sizef]&]
[s5;:Sizef`:`:typedef:%- [@(0.0.255) typedef]_[_^Size`_^ Size`_][@(0.0.255) <double>]_[* Size
f]&]
[s2; Size`_ with with [* double][@(0.0.255) ]dimensions.&]
[s5;:Upp`:`:Sizef:%- [@(0.0.255) typedef]_[_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) <double>]_[* Sizef]&]
[s2; Size`_ with [* double][@(0.0.255) ]dimensions.&]
[s3; &]
[s0; &]
[ {{10000F(128)G(128)@1 [s0; [* Constructor Detail]]}}&]
@ -57,8 +61,8 @@ and cy (height), set to 0.&]
sEmpty()] method on such a [* Size`_] object will return true.&]
[s3; &]
[s4; &]
[s5;:Size`_`:`:Size`_`(const Value`&`):%- [* Size`_]([@(0.0.255) const]_[_^Value^ Value][@(0.0.255) `&
]_[*@3 src])&]
[s5;:Size`_`:`:Size`_`(const Value`&`):%- [* Size`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Value`_en`-us`#Value`:`:class^ V
alue][@(0.0.255) `&]_[*@3 src])&]
[s2; Default copy constructor.&]
[s3; &]
[s4;%- &]
@ -72,8 +76,9 @@ int>`&]_[*@3 sz])&]
[s2; Creates a [* Size`_] object and initializes it with a [* Size] [*@3 sz].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:Size`_`(const Size`_`<short`>`&`):%- [* Size`_]([@(0.0.255) const]_[* Size`_
][@(0.0.255) <short>`&]_[*@3 sz])&]
[s5;:Size`_`:`:Size`_`(const Size`_`<int16`>`&`):%- [* Size`_]([@(0.0.255) const]_[* Size`_
][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int16^ int
16][@(0.0.255) >`&]_[*@3 sz])&]
[s2; Creates a [* Size`_] object and initializes it with a [* Size16]
[*@3 sz].&]
[s3; &]
@ -85,19 +90,20 @@ int>`&]_[*@3 sz])&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:Size`_`(const Size`_`<int64`>`&`):%- [* Size`_]([@(0.0.255) const]_[* Size`_
][@(0.0.255) <][_^int64^ int64][@(0.0.255) >`&]_[*@3 sz])&]
][@(0.0.255) <][_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ int
64][@(0.0.255) >`&]_[*@3 sz])&]
[s2; Creates a [* Size`_ ]object and initializes it with a [* Size64]
[%-*@3 sz].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:Size`_`(const Point`_`<T`>`&`):%- [* Size`_]([@(0.0.255) const]_[_^Point`_^ P
[s5;:Size`_`:`:Size`_`(const Point`_`<T`>`&`):%- [* Size`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Point`_en`-us`#Point`_`:`:struct^ P
oint`_][@(0.0.255) <][*@4 T][@(0.0.255) >`&]_[*@3 pt])&]
[s2; Creates a [* Size`_ ]object and initializes it with a [* Point]
[%-*@3 sz].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:Size`_`(const Nuller`&`):%- [* Size`_]([@(0.0.255) const]_[_^Nuller^ Nuller][@(0.0.255) `&
])&]
[s5;:Size`_`:`:Size`_`(const Nuller`&`):%- [* Size`_]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/Nuller`_en`-us`#Upp`:`:Nuller^ N
uller][@(0.0.255) `&])&]
[s2; Creates a [* Size`_ ]object and initializes it with [* Null].&]
[s3; &]
[s0; &]
@ -135,69 +141,76 @@ onst]&]
[s2; Returns the hash value of the size.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:ToString`(`)const:%- [_^String^ String]_[* ToString]()_[@(0.0.255) const]&]
[s5;:Size`_`:`:ToString`(`)const:%- [_^topic`:`/`/Core`/src`/String`_en`-us`#String`:`:class^ S
tring]_[* ToString]()_[@(0.0.255) const]&]
[s2; Returns the [* String] representation of the size.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`+`=`(Size`_`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`+`=](
[_^Size`_^ Size`_]_[*@3 p])&]
[s5;:Size`_`:`:operator`+`=`(Size`_`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`+`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_]_[*@3 p])&]
[s2; Increases [* cx] with [*@3 p]`'s horizontal dimension and [* cy] with
[*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`+`=`(T`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`+`=]([*@4 T
]_[*@3 t])&]
[s5;:Size`_`:`:operator`+`=`(T`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`+`=]([*@4 T]_[*@3 t])&]
[s2; Increases both dimension with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`-`=`(Size`_`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`-`=](
[_^Size`_^ Size`_]_[*@3 p])&]
[s5;:Size`_`:`:operator`-`=`(Size`_`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`-`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_]_[*@3 p])&]
[s2; Decreases [* cx ]with [*@3 p]`'s horizontal dimension and [* cy ]with
[*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`-`=`(T`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`-`=]([*@4 T
]_[*@3 t])&]
[s5;:Size`_`:`:operator`-`=`(T`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`-`=]([*@4 T]_[*@3 t])&]
[s2; Decreases both dimension with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`*`=`(Size`_`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`*`=](
[_^Size`_^ Size`_]_[*@3 p])&]
[s5;:Size`_`:`:operator`*`=`(Size`_`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`*`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_]_[*@3 p])&]
[s2; Multiplies [* cx ]with [*@3 p]`'s horizontal dimension and [* cy ]with
[*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`*`=`(T`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`*`=]([*@4 T
]_[*@3 t])&]
[s5;:Size`_`:`:operator`*`=`(T`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`*`=]([*@4 T]_[*@3 t])&]
[s2; Multiplies both dimension with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`/`=`(Size`_`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator/`=](
[_^Size`_^ Size`_]_[*@3 p])&]
[s5;:Size`_`:`:operator`/`=`(Size`_`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator/`=]([_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_]_[*@3 p])&]
[s2; Divides [* cx ]with [*@3 p]`'s horizontal dimension and [* cy ]with
[*@3 p]`'s vertical dimension.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`/`=`(T`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator/`=]([*@4 T]_
[*@3 t])&]
[s5;:Size`_`:`:operator`/`=`(T`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator/`=]([*@4 T]_[*@3 t])&]
[s2; Divides both dimension with the same value [*@3 t].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`<`<`=`(int`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator<<`=](
[@(0.0.255) int]_[*@3 sh])&]
[s5;:Size`_`:`:operator`<`<`=`(int`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator<<`=]([@(0.0.255) int]_[*@3 sh])&]
[s2; Shift both dimensions left by [*@3 sh].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`>`>`=`(int`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator>>`=](
[@(0.0.255) int]_[*@3 sh])&]
[s5;:Size`_`:`:operator`>`>`=`(int`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator>>`=]([@(0.0.255) int]_[*@3 sh])&]
[s2; Shift both dimensions right by [*@3 sh].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`+`+`(`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`+`+]()&]
[s5;:Size`_`:`:operator`+`+`(`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`+`+]()&]
[s2; Increments both dimensions.&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:operator`-`-`(`):%- [_^Size`_^ Size`_][@(0.0.255) `&]_[* operator`-`-]()&]
[s5;:Size`_`:`:operator`-`-`(`):%- [_^topic`:`/`/Core`/src`/Size`_en`-us`#Size`_`:`:struct^ S
ize`_][@(0.0.255) `&]_[* operator`-`-]()&]
[s2; Decrements both dimensions.&]
[s3; &]
[s4;%- &]
@ -205,8 +218,8 @@ onst]&]
[s2; Returns a conversion of the size to [* Value].&]
[s3; &]
[s4;%- &]
[s5;:Size`_`:`:Serialize`(Stream`&`):%- [@(0.0.255) void]_[* Serialize]([_^Stream^ Stream][@(0.0.255) `&
]_[*@3 s])&]
[s5;:Size`_`:`:Serialize`(Stream`&`):%- [@(0.0.255) void]_[* Serialize]([_^topic`:`/`/Core`/src`/Stream`_en`-us`#Stream`:`:class^ S
tream][@(0.0.255) `&]_[*@3 s])&]
[s2; Serializes the size to a stream [*@(141.42.0) s].&]
[s3; &]
[s0; &]

View file

@ -35,7 +35,7 @@ to the stream.&]
[s5;:CopyStream`(Stream`&`,Stream`&`,int64`): [_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64`:`:typedef^ i
nt64]_[* CopyStream]([_^topic`:`/`/Core`/src`/Stream`_en`-us`#Stream`:`:class^ Stream
][@(0.0.255) `&]_[*@3 dest], [_^topic`:`/`/Core`/src`/Stream`_en`-us`#Stream`:`:class^ S
tream][@(0.0.255) `&]_[*@3 src], [_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64`:`:typedef^ i
tream][@(0.0.255) `&]_[*@3 src], [_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:int64^ i
nt64]_[*@3 count] `= INT64`_MAX)&]
[s2;%% Copies at most [%-*@3 count] bytes from source to destination
stream. Returns the actual number of bytes copied. With default

View file

@ -69,7 +69,7 @@ r]_`*[*@3 s], [@(0.0.255) int]_[*@3 n])&]
[%-*@3 s]. Zero characters are included.&]
[s3; &]
[s4;%- &]
[s5;:String`:`:String`(const byte`*`,int`):%- [* String]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:byte`:`:typedef^ b
[s5;:String`:`:String`(const byte`*`,int`):%- [* String]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:byte^ b
yte]_`*[*@3 s], [@(0.0.255) int]_[*@3 n])&]
[s2; Constructs a string equal to first [%-*@3 n] bytes of [%-*@3 s].
Zero characters are included.&]
@ -309,8 +309,8 @@ recommend studying the library`'s source code.&]
[s2; Default copy constructor.&]
[s3; &]
[s4;%- &]
[s5;:WString`:`:WString`(const wchar`*`):%- [* WString]([@(0.0.255) const]_[_^wchar^ wchar]_
`*[*@3 s])&]
[s5;:WString`:`:WString`(const wchar`*`):%- [* WString]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ w
char]_`*[*@3 s])&]
[s2; Creates a copy of zero terminated string [%-*@3 s].&]
[s3; &]
[s4;%- &]
@ -325,14 +325,16 @@ g][@(0.0.255) `&]_[*@3 s], [@(0.0.255) int]_[*@3 n])&]
][%%* WString][%% ][*@3 s][%% ]([*@3 s ]can contain zero characters).&]
[s3; &]
[s4;%- &]
[s5;:WString`:`:WString`(const wchar`*`,int`):%- [* WString]([@(0.0.255) const]_[_^wchar^ w
[s5;:WString`:`:WString`(const wchar`*`,int`):%- [* WString]([@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ w
char]_`*[*@3 s], [@(0.0.255) int]_[*@3 n])&]
[s2;%- [%% Constructs a string equal to first ][*@3 n][%% characters of
][*@3 s ]([*@3 s ]can contain zero characters).&]
[s3; &]
[s4;%- &]
[s5;:WString`:`:WString`(const wchar`*`,const wchar`*`):%- [* WString]([@(0.0.255) const]_
[_^wchar^ wchar]_`*[*@3 s], [@(0.0.255) const]_[_^wchar^ wchar]_`*[*@3 lim])&]
[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ wchar]_`*[*@3 s],
[@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ w
char]_`*[*@3 lim])&]
[s2;%- [%% Constructs a string equal to first ][*@3 lim][%% `- ][*@3 s][%%
characters of ][*@3 s][%% ]([*@3 s ]can contain zero characters).&]
[s3; &]
@ -355,8 +357,8 @@ zero terminated string ][*@3 s ]([*@3 s ]can contain zero characters).&]
to [%-*@3 chr]. [%-*@3 chr] can be zero.&]
[s3; &]
[s4;%- &]
[s5;:WString`:`:WString`(WStringBuffer`&`):%- [* WString]([_^WStringBuffer^ WStringBuffer
][@(0.0.255) `&]_[*@3 b])&]
[s5;:WString`:`:WString`(WStringBuffer`&`):%- [* WString]([_^topic`:`/`/Core`/src`/StringBuffer`_en`-us`#WStringBuffer`:`:class^ W
StringBuffer][@(0.0.255) `&]_[*@3 b])&]
[s2; Constructs a string from [%-*@3 b]. [%-*@3 b] is emptied by this
operation.&]
[s3; &]
@ -379,13 +381,15 @@ empty [* WString]).&]
[s2; Reduces memory used by string to minimum (size optimization).&]
[s3;%- &]
[s4;%- &]
[s5;:WString`:`:ToString`(`)const:%- [_^String^ String]_[* ToString]()_[@(0.0.255) const]&]
[s5;:WString`:`:ToString`(`)const:%- [_^topic`:`/`/Core`/src`/String`_en`-us`#String`:`:class^ S
tring]_[* ToString]()_[@(0.0.255) const]&]
[s2; Converts [* WString ]to [* String ]using current default character
set. Also serves as standard text conversion (for [* AsString]
and [* operator<<] templates).&]
[s3;%- &]
[s4;%- &]
[s5;:WString`:`:GetVoid`(`):%- [@(0.0.255) static] [_^WString^ WString]_[* GetVoid]()&]
[s5;:WString`:`:GetVoid`(`):%- [@(0.0.255) static] [_^topic`:`/`/Core`/src`/String`_en`-us`#WString`:`:class^ W
String]_[* GetVoid]()&]
[s2; Returns special Void value. This value is same as empty string,
but IsVoid method returns true for it. It can be used in special
scenarios where client code needs to distinguish between two
@ -398,13 +402,13 @@ empty string if it is empty.&]
[s2; Returns true if String is special value returned by [* GetVoid].&]
[s3;%- &]
[s4;%- &]
[s5;:WString0`:`:Begin`(`)const:%- [@(0.0.255) const]_[_^wchar^ wchar]_`*[* Begin]()_[@(0.0.255) c
onst]&]
[s5;:WString0`:`:Begin`(`)const:%- [@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ w
char]_`*[* Begin]()_[@(0.0.255) const]&]
[s2; Returns a pointer to the first character.&]
[s3;%- &]
[s4;%- &]
[s5;:WString0`:`:End`(`)const:%- [@(0.0.255) const]_[_^wchar^ wchar]_`*[* End]()_[@(0.0.255) c
onst]&]
[s5;:WString0`:`:End`(`)const:%- [@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ w
char]_`*[* End]()_[@(0.0.255) const]&]
[s2; Returns a pointer to ending zero.&]
[s3;%- &]
[s4;%- &]
@ -425,7 +429,8 @@ grows exponentially, like with Vector or std`::vector).&]
[s3; &]
[s4;%- &]
[s5;:WString0`:`:Cat`(const wchar`*`,int`):%- [@(0.0.255) void]_[* Cat]([@(0.0.255) const]_
[_^wchar^ wchar]_`*[*@3 s], [@(0.0.255) int]_[*@3 length])&]
[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ wchar]_`*[*@3 s],
[@(0.0.255) int]_[*@3 length])&]
[s2;%- [%% Appends ][*@3 len][%% characters from string ][*@3 s] ([*@3 s ]can
contain zero characters).&]
[s3; &]
@ -453,7 +458,8 @@ are compared as unsigned integer values.&]
[s3; &]
[s4;%- &]
[s5;:WString0`:`:Insert`(int`,const wchar`*`,int`):%- [@(0.0.255) void]_[* Insert]([@(0.0.255) i
nt]_[*@3 pos], [@(0.0.255) const]_[_^wchar^ wchar]_`*[*@3 s], [@(0.0.255) int]_[*@3 count])&]
nt]_[*@3 pos], [@(0.0.255) const]_[_^topic`:`/`/Core`/src`/PrimitiveDataTypes`_en`-us`#Upp`:`:wchar^ w
char]_`*[*@3 s], [@(0.0.255) int]_[*@3 count])&]
[s2; Inserts first [%-*@3 count] characters of [%-*@3 s] at position
[%-*@3 pos].&]
[s3; &]

View file

@ -2,27 +2,35 @@ TOPIC("AMap_en-us")
#include "AMap_en-us.tppi"
END_TOPIC
TOPIC("AProcess_en-us")
#include "AProcess_en-us.tppi"
END_TOPIC
TOPIC("AppEnv_en-us")
#include "AppEnv_en-us.tppi"
END_TOPIC
TOPIC("ArrayMap_en-us")
#include "ArrayMap_en-us.tppi"
END_TOPIC
TOPIC("Array_en-us")
#include "Array_en-us.tppi"
END_TOPIC
TOPIC("Index_en-us")
#include "Index_en-us.tppi"
TOPIC("Function_en-us")
#include "Function_en-us.tppi"
END_TOPIC
TOPIC("MapKVRange_en-us")
#include "MapKVRange_en-us.tppi"
END_TOPIC
TOPIC("Point_en-us")
#include "Point_en-us.tppi"
END_TOPIC
TOPIC("PrimitiveDataTypes_en-us")
#include "PrimitiveDataTypes_en-us.tppi"
END_TOPIC
TOPIC("Rect_en-us")
#include "Rect_en-us.tppi"
END_TOPIC
TOPIC("Size_en-us")
#include "Size_en-us.tppi"
END_TOPIC
TOPIC("StreamFn_en-us")
#include "StreamFn_en-us.tppi"
END_TOPIC
TOPIC("String_en-us")
#include "String_en-us.tppi"
END_TOPIC