log_buffer_type Derived Type

type, public :: log_buffer_type

Buffer that accumulates log entries inside pure code. Pass as intent(inout) through pure call chains, then flush with flush_log_buffer once back in impure context.


Inherits

type~~log_buffer_type~~InheritsGraph type~log_buffer_type log_buffer_type type~log_entry_type log_entry_type type~log_buffer_type->type~log_entry_type entries

Components

Type Visibility Attributes Name Initial
integer(kind=default_int), public :: count = 0

Number of entries currently stored

type(log_entry_type), public :: entries(max_log_entries)
integer(kind=default_int), public :: overflow = 0

Number of entries dropped because the buffer was full

integer(kind=default_int), public :: truncated = 0

Number of entries where message or names were truncated


Source Code

   type, public :: log_buffer_type
      !! Buffer that accumulates log entries inside pure code.
      !! Pass as intent(inout) through pure call chains, then
      !! flush with flush_log_buffer once back in impure context.
      type(log_entry_type) :: entries(max_log_entries)
      integer(default_int) :: count = 0
         !! Number of entries currently stored
      integer(default_int) :: overflow = 0
         !! Number of entries dropped because the buffer was full
      integer(default_int) :: truncated = 0
         !! Number of entries where message or names were truncated
   end type log_buffer_type