This module, fniOctalUtil128
contains procedures for working with octal strings and int128 data type.
Note
This module treats octal strings as bit values represented by octal digits and not real numbers. Thus, octal strings parse by this module will be converted to int128 values as if they are real bit values represented by octal digits.
Note
Procedures of this module are not pure procedures.
Uses
Functions
public function octalToInt128(input, output, startpos, endpos) result(error)
- Author
- Khang Hoang Nguyen
- Since
- 1n.0.0.f
Parse the input
string as bits represented by octal digits to an int128 value.
Arguments
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | input | A string to be parsed as an octal string to an int128 value. | ||
integer(kind=k_int128), | intent(out) | :: | output | An int128 value of the | ||
integer(kind=k_int32), | intent(in), | optional | :: | startpos | An int32 value of the position(inclusive) of where to start parsing. | |
integer(kind=k_int32), | intent(in), | optional | :: | endpos | An int32 value of the position(inclusive) of where to end parsing. |
Return Value logical
public function octalToInt128TrueError(input, output, startpos, endpos) result(error)
- Author
- Khang Hoang Nguyen
- Since
- 1n.0.0.f
Parse the input
string as bits represented by octal digits to an int128 value.
Arguments
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | input | A string to be parsed as an octal string to an int128 value. | ||
integer(kind=k_int128), | intent(out) | :: | output | An int128 value of the | ||
integer(kind=k_int32), | intent(in), | optional | :: | startpos | An int32 value of the position(inclusive) of where to start parsing. | |
integer(kind=k_int32), | intent(in), | optional | :: | endpos | An int32 value of the position(inclusive) of where to end parsing. |
Return Value integer(kind=k_int32)
public function octalCompareAsInt128(firstString, secondString, output) result(error)
- Author
- Khang Hoang Nguyen
- Since
- 1n.0.0.f
Compare two strings as octal string by parsing them to int128 values first.
Arguments
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | firstString | A string to be compared to the string | ||
character(len=*), | intent(in) | :: | secondString | A string to be compared to the string | ||
integer(kind=k_int32), | intent(out) | :: | output | An int32 value of 1 if the |
Return Value logical
public function octalInt128OrSmaller(firstString, secondString)
- Author
- Khang Hoang Nguyen
- Since
- 1n.0.0.f
Compare two strings bases on the content of the strings reference to int128 values. If the strings are valid octal strings that can be parsed to int128 values then they will be compared base on their int128 values. Otherwise, the strings will be compared base on the priority ranking order below.
Arguments
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | firstString | A string to be compared to the string | ||
character(len=*), | intent(in) | :: | secondString | A string to be compared to the string |