Loading...
Searching...
No Matches
logging.f90

Go to the source code of this file.

Data Types

interface  render
 Interface to render diagnostic messages and labels. More...
interface  label_type
 Represents text as a sequence of ASCII code units. The derived type wraps an allocatable character array. More...
interface  diagnostic_report
 Definition of diagnostic message. More...
type  line_token

Functions/Subroutines

pure character(:) function, allocatable colorize (string, foreground, background, style)
 Colorize and stylize strings, DEFAULT kind.
elemental integer function color_index (color)
 Return the array-index corresponding to the queried color.
elemental integer function style_index (style)
 Return the array-index corresponding to the queried style.
elemental character(len(string)) function upper (string)
 Return a string with all uppercase characters.
type(diagnostic_report) function diagnostic_new (level, message, source, label, diagnostic)
 Create new diagnostic message.
pure character(:) function, allocatable to_string (val, width)
 Represent an integer as character sequence.
subroutine, public printf (str, fmt)
 Conditional pritn of the error/warning message.

Variables

logical, public verbose
 Master switch for verbose diagnostic output Default value is .false. (quiet mode). Set to .true. to get detailed step-by-step information about preprocessing actions. Safe to modify at any time � the change takes effect immediately for all subsequent operations.
logical, public nocolor = .false.
 Switch for controling the ANSI color output Default value is .true. (color mode on). Set to .false. to get raw string output.
character(1), parameter nl = new_line('a')
 New line character.
character(1), parameter escape = achar(27)
 '\' character.
character(2), parameter code_start = ESCAPE//'['
 Start ansi code, "\‍[".
character(1), parameter code_end = 'm'
 End ansi code, "m".
character(4), parameter code_clear = CODE_START//'0'//CODE_END
 Clear all styles, "\‍[0m".
character(17), dimension(1:2, 1:16), parameter styles = reshape([ 'BOLD_ON ', '1 ', 'ITALICS_ON ', '3 ', 'UNDERLINE_ON ', '4 ', 'INVERSE_ON ', '7 ', 'STRIKETHROUGH_ON ', '9 ', 'BOLD_OFF ', '22 ', 'ITALICS_OFF ', '23 ', 'UNDERLINE_OFF ', '24 ', 'INVERSE_OFF ', '27 ', 'STRIKETHROUGH_OFF', '29 ', 'FRAMED_ON ', '51 ', 'ENCIRCLED_ON ', '52 ', 'OVERLINED_ON ', '53 ', 'FRAMED_OFF ', '54 ', 'ENCIRCLED_OFF ', '54 ', 'OVERLINED_OFF ', '55 ' ], [2, 16])
 Styles.
character(15), dimension(1:2, 1:17), parameter colors_fg = reshape([ 'BLACK ', '30 ', 'RED ', '31 ', 'GREEN ', '32 ', 'YELLOW ', '33 ', 'BLUE ', '34 ', 'MAGENTA ', '35 ', 'CYAN ', '36 ', 'WHITE ', '37 ', 'DEFAULT ', '39 ', 'BLACK_INTENSE ', '90 ', 'RED_INTENSE ', '91 ', 'GREEN_INTENSE ', '92 ', 'YELLOW_INTENSE ', '93 ', 'BLUE_INTENSE ', '94 ', 'MAGENTA_INTENSE', '95 ', 'CYAN_INTENSE ', '96 ', 'WHITE_INTENSE ', '97 ' ], [2, 17])
 Foreground colors.
character(15), dimension(1:2, 1:17), parameter colors_bg = reshape([ 'BLACK ', '40 ', 'RED ', '41 ', 'GREEN ', '42 ', 'YELLOW ', '43 ', 'BLUE ', '44 ', 'MAGENTA ', '45 ', 'CYAN ', '46 ', 'WHITE ', '47 ', 'DEFAULT ', '49 ', 'BLACK_INTENSE ', '100 ', 'RED_INTENSE ', '101 ', 'GREEN_INTENSE ', '102 ', 'YELLOW_INTENSE ', '103 ', 'BLUE_INTENSE ', '104 ', 'MAGENTA_INTENSE', '105 ', 'CYAN_INTENSE ', '106 ', 'WHITE_INTENSE ', '107 ' ], [2, 17])
 Background colors.