2020-01-10 01:10:09 +02:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
< html >
< head >
2020-04-14 19:56:54 +03:00
< title > Mathematics Template< / title >
2020-05-03 03:20:55 +03:00
< link href = "../docs-assets/Breadcrumbs.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
2020-03-19 02:11:25 +02:00
< meta name = "viewport" content = "width=device-width initial-scale=1" >
2020-01-10 01:10:09 +02:00
< meta http-equiv = "Content-Type" content = "text/html; charset=utf-8" >
< meta http-equiv = "Content-Language" content = "en-gb" >
2020-05-03 03:01:21 +03:00
2020-05-03 03:20:55 +03:00
< link href = "../docs-assets/Contents.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Progress.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Navigation.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Fonts.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
< link href = "../docs-assets/Base.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
2020-05-03 03:01:21 +03:00
< script >
MathJax = {
tex: {
inlineMath: '$', '$'], ['\\(', '\\)'
},
svg: {
fontCache: 'global'
}
};
< / script >
< script type = "text/javascript" id = "MathJax-script" async
src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-svg.js">
< / script >
2020-05-03 03:20:55 +03:00
< link href = "../docs-assets/Colours.css" rel = "stylesheet" rev = "stylesheet" type = "text/css" >
2020-04-14 19:56:54 +03:00
2020-01-10 01:10:09 +02:00
< / head >
2020-05-03 03:01:21 +03:00
< body class = "commentary-font" >
2020-03-19 02:11:25 +02:00
< nav role = "navigation" >
2022-05-16 00:38:57 +03:00
< h1 > < a href = "../index.html" >
2020-05-03 18:34:53 +03:00
< img src = "../docs-assets/Inform.png" height = 72" >
2020-04-14 19:56:54 +03:00
< / a > < / h1 >
2022-05-16 00:38:57 +03:00
< ul > < li > < a href = "../index.html" > home< / a > < / li >
2022-04-04 20:31:44 +03:00
< / ul > < h2 > Compiler< / h2 > < ul >
< li > < a href = "../structure.html" > structure< / a > < / li >
< li > < a href = "../inbuildn.html" > inbuild< / a > < / li >
< li > < a href = "../inform7n.html" > inform7< / a > < / li >
< li > < a href = "../intern.html" > inter< / a > < / li >
< li > < a href = "../services.html" > services< / a > < / li >
2022-04-18 17:46:46 +03:00
< li > < a href = "../secrets.html" > secrets< / a > < / li >
2022-04-04 20:31:44 +03:00
< / ul > < h2 > Other Tools< / h2 > < ul >
< li > < a href = "../inblorbn.html" > inblorb< / a > < / li >
< li > < a href = "../indocn.html" > indoc< / a > < / li >
< li > < a href = "../inform6.html" > inform6< / a > < / li >
< li > < a href = "../inpolicyn.html" > inpolicy< / a > < / li >
2022-04-06 23:05:37 +03:00
< / ul > < h2 > Resources< / h2 > < ul >
< li > < a href = "../extensions.html" > extensions< / a > < / li >
< li > < a href = "../kits.html" > kits< / a > < / li >
2022-04-04 20:31:44 +03:00
< / ul > < h2 > Repository< / h2 > < ul >
< li > < a href = "https://github.com/ganelson/inform" > < img src = "../docs-assets/github.png" height = 18 > github< / a > < / li >
< / ul > < h2 > Related Projects< / h2 > < ul >
2022-05-16 00:38:57 +03:00
< li > < a href = "../../../inweb/index.html" > inweb< / a > < / li >
< li > < a href = "../../../intest/index.html" > intest< / a > < / li >
2020-03-19 02:11:25 +02:00
2020-04-14 19:56:54 +03:00
< / ul >
2020-03-19 02:11:25 +02:00
< / nav >
< main role = "main" >
2020-05-03 03:01:21 +03:00
<!-- Weave of 'Mathematics Template' generated by Inweb -->
< div class = "breadcrumbs" >
2022-05-16 00:38:57 +03:00
< ul class = "crumbs" > < li > < a href = "../index.html" > Home< / a > < / li > < li > < a href = "../extensions.html" > Kits< / a > < / li > < li > < a href = "index.html" > BasicInformKit< / a > < / li > < li > < b > Mathematics Template< / b > < / li > < / ul > < / div >
2023-06-09 01:41:37 +03:00
< p class = "purpose" > Mathematical functions which involve integers.< / p >
2020-01-10 01:10:09 +02:00
2023-06-09 01:41:37 +03:00
< ul class = "toc" > < li > < a href = "S-mth.html#SP1" > § 1. Square Root< / a > < / li > < li > < a href = "S-mth.html#SP2" > § 2. Cube Root< / a > < / li > < li > < a href = "S-mth.html#SP3" > § 3. Absolute value< / a > < / li > < li > < a href = "S-mth.html#SP4" > § 4. IntegerDivide< / a > < / li > < li > < a href = "S-mth.html#SP5" > § 5. IntegerRemainder< / a > < / li > < li > < a href = "S-mth.html#SP6" > § 6. SignedCompare< / a > < / li > < / ul > < hr class = "tocbar" >
2020-01-10 01:10:09 +02:00
2023-06-09 01:41:37 +03:00
< p class = "commentary firstcommentary" > < a id = "SP1" class = "paragraph-anchor" > < / a > < b > § 1. Square Root. < / b > We only calculate by hand if we have to.
2020-01-10 01:10:09 +02:00
< / p >
2020-05-03 03:01:21 +03:00
< p class = "commentary" > The slower integer method is an old algorithm for extracting binary square
roots, taking 2 bits at a time. We start out with < span class = "extract" > < span class = "extract-syntax" > one< / span > < / span > at the highest bit
which isn't the sign bit; that used to be worked out as < span class = "extract" > < span class = "extract-syntax" > WORD_HIGHBIT/2< / span > < / span > , but
2020-01-10 01:10:09 +02:00
this caused unexpected portability problems (exposing a minor bug in Inform
and also glulxe) because of differences in how C compilers handle signed
2020-04-14 19:56:54 +03:00
division of constants in the case where the dividend is \(-2^{31}\), the unique
2020-01-10 01:10:09 +02:00
number which cannot be negated in 32-bit twos complement arithmetic.
< / p >
2020-05-03 03:01:21 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "plain-syntax" > [ < / span > < span class = "identifier-syntax" > SquareRoot< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > num< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > op< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > ;< / span >
2023-09-05 12:12:54 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > < < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > IssueRTP< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "TookSquareRootOfNegativeNumber"< / span > < span class = "plain-syntax" > ,< / span >
< span class = "plain-syntax" > < / span > < span class = "string-syntax" > "You can't take the square root of a negative number."< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > BasicInformKitRTPs< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "constant-syntax" > 1< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > }< / span >
2020-05-03 03:01:21 +03:00
2023-06-09 01:41:37 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > VM_SquareRoot< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > ;< / span >
2020-05-03 03:01:21 +03:00
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > op< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "comment-syntax" > "one" starts at the highest power of four < = the argument.< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > for< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > WORD_NEXTTOHIGHBIT< / span > < span class = "plain-syntax" > : < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > > < / span > < span class = "identifier-syntax" > op< / span > < span class = "plain-syntax" > : < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > /4) ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > while< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > ~= < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > op< / span > < span class = "plain-syntax" > > = < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > + < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > ) {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > op< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > op< / span > < span class = "plain-syntax" > - < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > - < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > /2 + < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > } < / span > < span class = "reserved-syntax" > else< / span > < span class = "plain-syntax" > {< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > /2;< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > one< / span > < span class = "plain-syntax" > /4;< / span >
< span class = "plain-syntax" > }< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > res< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > ];< / span >
2020-01-10 01:10:09 +02:00
< / pre >
2023-06-09 01:41:37 +03:00
< p class = "commentary firstcommentary" > < a id = "SP2" class = "paragraph-anchor" > < / a > < b > § 2. Cube Root. < / b > Again, the technique here is a fallback measure. It's an iterative scheme for
finding cube roots by Newton-Raphson approximation, not a great method but which,
on the narrow ranges of integers we deal with, just about good enough. The square
root is used only as a sighting shot.
2020-01-10 01:10:09 +02:00
< / p >
2020-05-03 03:01:21 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
2023-06-09 01:41:37 +03:00
< span class = "plain-syntax" > [ < / span > < span class = "identifier-syntax" > CubeRoot< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > y< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > VM_CubeRoot< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > ;< / span >
2020-05-03 03:01:21 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > < < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > ) < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > = -< / span > < span class = "identifier-syntax" > SquareRoot< / span > < span class = "plain-syntax" > (-< / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > ); < / span > < span class = "reserved-syntax" > else< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > SquareRoot< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > );< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > for< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > =0: (< / span > < span class = "identifier-syntax" > y< / span > < span class = "plain-syntax" > ~= < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > ) & & (< / span > < span class = "identifier-syntax" > n< / span > < span class = "plain-syntax" > ++ < < / span > < span class = "constant-syntax" > 100< / span > < span class = "plain-syntax" > ): < / span > < span class = "identifier-syntax" > y< / span > < span class = "plain-syntax" > = < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > = (2*< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > + < / span > < span class = "identifier-syntax" > num< / span > < span class = "plain-syntax" > /< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > /< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > )/3) ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > ];< / span >
2020-01-10 01:10:09 +02:00
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP3" class = "paragraph-anchor" > < / a > < b > § 3. Absolute value. < / b > Of an integer:
2020-01-10 01:10:09 +02:00
< / p >
2020-05-03 03:01:21 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "plain-syntax" > [ < / span > < span class = "identifier-syntax" > NUMBER_TY_Abs< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > ; < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > < 0) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > -< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > ; < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > ; ];< / span >
2020-01-10 01:10:09 +02:00
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP4" class = "paragraph-anchor" > < / a > < b > § 4. IntegerDivide. < / b > We can't simply use I6's < span class = "extract" > < span class = "extract-syntax" > /< / span > < / span > operator, as that translates directly into a
2020-01-10 01:10:09 +02:00
virtual machine opcode which crashes on divide by zero.
< / p >
2020-05-03 03:01:21 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "plain-syntax" > [ < / span > < span class = "identifier-syntax" > IntegerDivide< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > ;< / span >
2023-08-26 19:07:42 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > == < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > ) { < / span > < span class = "identifier-syntax" > IssueRTP< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "DividedByZero"< / span > < span class = "plain-syntax" > , < / span > < span class = "string-syntax" > "You can't divide by zero."< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > BasicInformKitRTPs< / span > < span class = "plain-syntax" > ); < / span > < span class = "reserved-syntax" > rfalse< / span > < span class = "plain-syntax" > ; }< / span >
2020-05-03 03:01:21 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > /< / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > ];< / span >
2020-01-10 01:10:09 +02:00
< / pre >
2020-08-27 17:50:24 +03:00
< p class = "commentary firstcommentary" > < a id = "SP5" class = "paragraph-anchor" > < / a > < b > § 5. IntegerRemainder. < / b > Similarly.
2020-01-10 01:10:09 +02:00
< / p >
2020-05-03 03:01:21 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "plain-syntax" > [ < / span > < span class = "identifier-syntax" > IntegerRemainder< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > ;< / span >
2023-08-26 19:07:42 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > == < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > ) { < / span > < span class = "identifier-syntax" > IssueRTP< / span > < span class = "plain-syntax" > (< / span > < span class = "string-syntax" > "DividedByZero"< / span > < span class = "plain-syntax" > , < / span > < span class = "string-syntax" > "You can't divide by zero."< / span > < span class = "plain-syntax" > , < / span > < span class = "identifier-syntax" > BasicInformKitRTPs< / span > < span class = "plain-syntax" > ); < / span > < span class = "reserved-syntax" > rfalse< / span > < span class = "plain-syntax" > ; }< / span >
2020-05-03 03:01:21 +03:00
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > A< / span > < span class = "plain-syntax" > %< / span > < span class = "identifier-syntax" > B< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > ];< / span >
2020-01-10 01:10:09 +02:00
< / pre >
2023-06-09 01:41:37 +03:00
< p class = "commentary firstcommentary" > < a id = "SP6" class = "paragraph-anchor" > < / a > < b > § 6. SignedCompare. < / b > This routine is hardly ever needed; it wraps up ordinary comparisons.
2020-01-10 01:10:09 +02:00
< / p >
2020-05-03 03:01:21 +03:00
< pre class = "displayed-code all-displayed-code code-font" >
< span class = "plain-syntax" > [ < / span > < span class = "identifier-syntax" > SignedCompare< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > < / span > < span class = "identifier-syntax" > y< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > > < / span > < span class = "identifier-syntax" > y< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "constant-syntax" > 1< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > if< / span > < span class = "plain-syntax" > (< / span > < span class = "identifier-syntax" > x< / span > < span class = "plain-syntax" > == < / span > < span class = "identifier-syntax" > y< / span > < span class = "plain-syntax" > ) < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > < / span > < span class = "constant-syntax" > 0< / span > < span class = "plain-syntax" > ;< / span >
< span class = "plain-syntax" > < / span > < span class = "reserved-syntax" > return< / span > < span class = "plain-syntax" > -1;< / span >
< span class = "plain-syntax" > ];< / span >
2020-01-10 01:10:09 +02:00
< / pre >
2020-05-03 03:01:21 +03:00
< nav role = "progress" > < div class = "progresscontainer" >
2023-09-05 12:12:54 +03:00
< ul class = "progressbar" > < li class = "progressprev" > < a href = "S-prg.html" > ❮ < / a > < / li > < li class = "progresssection" > < a href = "S-dfn.html" > dfn< / a > < / li > < li class = "progresssection" > < a href = "S-str.html" > str< / a > < / li > < li class = "progresssection" > < a href = "S-utl.html" > utl< / a > < / li > < li class = "progresssection" > < a href = "S-prg.html" > prg< / a > < / li > < li class = "progresscurrent" > mth< / li > < li class = "progresssection" > < a href = "S-srt.html" > srt< / a > < / li > < li class = "progresssection" > < a href = "S-tbl.html" > tbl< / a > < / li > < li class = "progresssection" > < a href = "S-mst.html" > mst< / a > < / li > < li class = "progresssection" > < a href = "S-rlb.html" > rlb< / a > < / li > < li class = "progresssection" > < a href = "S-act.html" > act< / a > < / li > < li class = "progresssection" > < a href = "S-prn.html" > prn< / a > < / li > < li class = "progresssection" > < a href = "S-flx.html" > flx< / a > < / li > < li class = "progresssection" > < a href = "S-blc.html" > blc< / a > < / li > < li class = "progresssection" > < a href = "S-txt.html" > txt< / a > < / li > < li class = "progresssection" > < a href = "S-chr.html" > chr< / a > < / li > < li class = "progresssection" > < a href = "S-rgx.html" > rgx< / a > < / li > < li class = "progresssection" > < a href = "S-lst.html" > lst< / a > < / li > < li class = "progresssection" > < a href = "S-cmb.html" > cmb< / a > < / li > < li class = "progresssection" > < a href = "S-rlt.html" > rlt< / a > < / li > < li class = "progresssection" > < a href = "S-rlt2.html" > rlt2< / a > < / li > < li class = "progresssection" > < a href = "S-prp.html" > prp< / a > < / li > < li class = "progresssection" > < a href = "S-rtp.html" > rtp< / a > < / li > < li class = "progressnext" > < a href = "S-srt.html" > ❯ < / a > < / li > < / ul > < / div >
2020-05-03 03:01:21 +03:00
< / nav > <!-- End of weave -->
2020-04-14 19:56:54 +03:00
2020-03-19 02:11:25 +02:00
< / main >
2020-01-10 01:10:09 +02:00
< / body >
< / html >