forbear_element_object Module

module~~forbear_element_object~~UsesGraph module~forbear_element_object forbear_element_object iso_fortran_env iso_fortran_env iso_fortran_env->module~forbear_element_object face face face->module~forbear_element_object module~forbear_kinds forbear_kinds module~forbear_kinds->module~forbear_element_object
Help

forbear project, definition of element_object.

Used By

module~~forbear_element_object~~UsedByGraph module~forbear_element_object forbear_element_object module~forbear_bar_object forbear_bar_object module~forbear_element_object->module~forbear_bar_object module~forbear forbear module~forbear_bar_object->module~forbear program~forbear_minimal forbear_minimal module~forbear->program~forbear_minimal
Help


Derived Types

type, public :: element_object

Bar element class.

Components

TypeVisibility AttributesNameInitial
character(len=:), public, allocatable:: color_bg

Background color.

character(len=:), public, allocatable:: color_fg

Foreground color.

character(kind=len=:,UCS4), public, allocatable:: string

Element string.

character(len=:), public, allocatable:: style

Style.

Type-Bound Procedures

procedure, private, pass(lhs) :: assign_element

Operator =.

generic, public :: assignment(=) => assign_element

Overload =.

procedure, public, pass(self) :: destroy

Destroy element.

procedure, public, pass(self) :: initialize

Initialize element.

procedure, public, pass(self) :: output

Return formatted output of element.


Functions

private pure function output(self)

Return formatted output of element.

Arguments

Type IntentOptional AttributesName
class(element_object), intent(in) :: self

element.

Return Value character(kind=len=:,UCS4), allocatable

Formatted output.


Subroutines

private pure subroutine assign_element(lhs, rhs)

Operator =.

Arguments

Type IntentOptional AttributesName
class(element_object), intent(inout) :: lhs

Left hand side.

type(element_object), intent(in) :: rhs

Right hand side.

private pure subroutine destroy(self)

Destroy element.

Arguments

Type IntentOptional AttributesName
class(element_object), intent(inout) :: self

element.

private pure subroutine initialize(self, string, color_fg, color_bg, style)

Initialize element.

Arguments

Type IntentOptional AttributesName
class(element_object), intent(inout) :: self

element.

class(*), intent(in), optional :: string

Element string.

character(len=*), intent(in), optional :: color_fg

Foreground color.

character(len=*), intent(in), optional :: color_bg

Background color.

character(len=*), intent(in), optional :: style

Style.