class HTML_OUTPUT_STREAM
Summary
Highly tailored filter that outputs well-formed HTML. Be aware that you cannot add any character as you want. You can filter this stream, but keep it available because it controls the tags.
Direct parents
Inherit list: FILTER_OUTPUT_STREAM
Class invariant
Overview
Creation features
{ANY}
Features
CGI extensions: written before the HTML itself is open
{ANY}
Main HTML structure
{ANY}
{ANY}
Attributes management
{ANY}
  • attributes: STRING
    Because there are so many attributes for each tag, we did not want features with scores of parameters.%
  • with_attribute (name: STRING, value: STRING)
    Call this feature before adding an opening tag; all the attributes will be added to the tag.
{HTML_HANDLER}
{FILTER_OUTPUT_STREAM}
Putting characters
{ANY}
{ANY}
Header tags
{ANY}
Frames
{ANY}
Body tags
{ANY}
Forms
{ANY}
{}
State queries
{ANY}
States
{}
Send to the underlying stream
{}
{}
{ANY}
{}
Once strings
{}
{ANY}
  • disconnect
    Disconnect from the underlying stream.
{STREAM}
  • do_detach
    Used by the underlying stream to require not to be filtered anymore
{}
{ANY}
{FILTER}
{ANY}
{}
{ANY}
{}
{STREAM_HANDLER}
{FILTER}
{ANY}
{}
{RECYCLING_POOL}
  • recycle
    Do whatever needs to be done to free resources or recycle other objects when recycling this one
{}
  • dispose
    Action to be executed just before garbage collection reclaims an object.
{}
{ANY}
{ABSTRACT_STRING}
{ANY}
To write a number:
{ANY}
Other features:
{ANY}
{}
{}
{FILTER}
put_cgi_header (key: STRING, value: STRING)
effective procedure
{ANY}
header
effective procedure
{ANY}
body
effective procedure
{ANY}
frames
effective procedure
{ANY}
close
effective procedure
{ANY}
last_tag: STRING
effective function
{ANY}
has_open_tag: BOOLEAN
effective function
{ANY}
attributes: STRING
writable attribute
{ANY}
Because there are so many attributes for each tag, we did not want features with scores of parameters.%
with_attribute (name: STRING, value: STRING)
effective procedure
{ANY}
Call this feature before adding an opening tag; all the attributes will be added to the tag.
open_tag (tag: STRING)
effective procedure
open_close_tag (tag: STRING)
effective procedure
close_tag (tag: STRING)
effective procedure
put_filtered_string (string: STRING)
effective procedure
filtered_put_character (c: CHARACTER)
effective procedure
filtered_flush
effective procedure
can_put_character (c: CHARACTER): BOOLEAN
effective function
{ANY}
put_entity (entity: STRING)
effective procedure
{ANY}
put_comment (comment: STRING)
effective procedure
{ANY}
indent
effective procedure
{ANY}
put_base (base: STRING)
effective procedure
{ANY}
put_meta (equiv: STRING, content: STRING)
effective procedure
{ANY}
put_stylesheet (ref: STRING)
effective procedure
{ANY}
put_javascript (ref: STRING)
effective procedure
{ANY}
open_title
effective procedure
{ANY}
close_title
effective procedure
{ANY}
put_script (language: STRING, source: STRING)
effective procedure
{ANY}
open_script (language: STRING)
effective procedure
{ANY}
close_script
effective procedure
{ANY}
open_frameset
effective procedure
{ANY}
close_frameset
effective procedure
{ANY}
put_frame (src: STRING, name: STRING)
effective procedure
{ANY}
open_noframes
effective procedure
{ANY}
close_noframes
effective procedure
{ANY}
open_section
effective procedure
{ANY}
close_section
effective procedure
{ANY}
open_subsection
effective procedure
{ANY}
close_subsection
effective procedure
{ANY}
open_subsubsection
effective procedure
{ANY}
close_subsubsection
effective procedure
{ANY}
put_break
effective procedure
{ANY}
put_horizontal_rule
effective procedure
{ANY}
put_image (source: STRING)
effective procedure
{ANY}
open_bold
effective procedure
{ANY}
close_bold
effective procedure
{ANY}
open_font (size: STRING)
effective procedure
{ANY}
close_font
effective procedure
{ANY}
open_italics
effective procedure
{ANY}
close_italics
effective procedure
{ANY}
open_underlined
effective procedure
{ANY}
close_underlined
effective procedure
{ANY}
open_typeset
effective procedure
{ANY}
close_typeset
effective procedure
{ANY}
open_anchor_address (ref: STRING, target: STRING)
effective procedure
{ANY}
open_anchor_name (ref: STRING)
effective procedure
{ANY}
open_anchor
effective procedure
{ANY}
close_anchor
effective procedure
{ANY}
open_list
effective procedure
{ANY}
open_numbered_list
effective procedure
{ANY}
close_list
effective procedure
{ANY}
open_definition_list
effective procedure
{ANY}
close_definition_list
effective procedure
{ANY}
open_definition_term
effective procedure
{ANY}
close_definition_term
effective procedure
{ANY}
open_definition_description
effective procedure
{ANY}
close_definition_description
effective procedure
{ANY}
open_list_item
effective procedure
{ANY}
close_list_item
effective procedure
{ANY}
open_table
effective procedure
{ANY}
close_table
effective procedure
{ANY}
open_table_row
effective procedure
{ANY}
close_table_row
effective procedure
{ANY}
open_table_cell
effective procedure
{ANY}
close_table_cell
effective procedure
{ANY}
open_form (name: STRING, method: STRING, action: STRING)
effective procedure
{ANY}
close_form
effective procedure
{ANY}
open_text_area (name: STRING, rows: INTEGER_32, cols: INTEGER_32)
effective procedure
{ANY}
close_text_area
effective procedure
{ANY}
put_button (name: STRING, title: STRING)
effective procedure
{ANY}
put_validate_button (name: STRING, title: STRING)
effective procedure
{ANY}
put_reset_button (name: STRING, title: STRING)
effective procedure
{ANY}
put_hidden_field (name: STRING, value: STRING)
effective procedure
{ANY}
put_text_field (name: STRING, value: STRING)
effective procedure
{ANY}
put_password_field (name: STRING, value: STRING)
effective procedure
{ANY}
put_radio_button (name: STRING, value: STRING, checked: BOOLEAN)
effective procedure
{ANY}
put_check_box (name: STRING, value: STRING, checked: BOOLEAN)
effective procedure
{ANY}
open_combo_select (name: STRING)
effective procedure
{ANY}
open_multiple_select (name: STRING, size: INTEGER_32)
effective procedure
{ANY}
close_select
effective procedure
{ANY}
open_option (value: STRING)
effective procedure
{ANY}
close_option
effective procedure
{ANY}
open_paragraph
effective procedure
{ANY}
close_paragraph
effective procedure
{ANY}
open_preformatted
effective procedure
{ANY}
close_preformatted
effective procedure
{ANY}
open_blockquote
effective procedure
{ANY}
close_blockquote
effective procedure
{ANY}
open_div
effective procedure
{ANY}
close_div
effective procedure
{ANY}
open_span
effective procedure
{ANY}
close_span
effective procedure
{ANY}
put_input (type: STRING, name: STRING, value: STRING, checked: BOOLEAN)
effective procedure
{}
started: BOOLEAN
effective function
{ANY}
finished: BOOLEAN
effective function
{ANY}
in_header: BOOLEAN
effective function
{ANY}
in_script: BOOLEAN
effective function
{ANY}
in_body: BOOLEAN
effective function
{ANY}
in_list: BOOLEAN
effective function
{ANY}
in_list_item: BOOLEAN
effective function
{ANY}
in_table: BOOLEAN
effective function
{ANY}
in_table_row: BOOLEAN
effective function
{ANY}
in_table_cell: BOOLEAN
effective function
{ANY}
in_form: BOOLEAN
effective function
{ANY}
in_select: BOOLEAN
effective function
{ANY}
in_option: BOOLEAN
effective function
{ANY}
in_frames: BOOLEAN
effective function
{ANY}
in_frameset: BOOLEAN
effective function
{ANY}
in_noframes: BOOLEAN
effective function
{ANY}
in_a_body: BOOLEAN
effective function
{ANY}
in_a_form: BOOLEAN
effective function
{ANY}
in_text_area: BOOLEAN
effective function
{ANY}
in_paragraph: BOOLEAN
effective function
{ANY}
in_blockquote: BOOLEAN
effective function
{ANY}
in_div: BOOLEAN
effective function
{ANY}
in_preformatted: BOOLEAN
effective function
{ANY}
in_span: BOOLEAN
effective function
{ANY}
in_definition_list: BOOLEAN
effective function
{ANY}
in_definition_description: BOOLEAN
effective function
{ANY}
in_definition_term: BOOLEAN
effective function
{ANY}
state: INTEGER_32
effective function
{}
set_state (a_state: INTEGER_32)
effective procedure
{}
reset_state (a_state: INTEGER_32)
effective procedure
{}
state_closed: INTEGER_32
is 0
constant attribute
{}
state_in_header: INTEGER_32
is 10
constant attribute
{}
state_in_script: INTEGER_32
is 11
constant attribute
{}
state_in_body: INTEGER_32
is 20
constant attribute
{}
state_in_list: INTEGER_32
is 21
constant attribute
{}
state_in_list_item: INTEGER_32
is 22
constant attribute
{}
state_in_table: INTEGER_32
is 23
constant attribute
{}
state_in_table_row: INTEGER_32
is 24
constant attribute
{}
state_in_table_cell: INTEGER_32
is 25
constant attribute
{}
state_in_text_area: INTEGER_32
is 26
constant attribute
{}
state_in_paragraph: INTEGER_32
is 27
constant attribute
{}
state_in_blockquote: INTEGER_32
is 28
constant attribute
{}
state_in_div: INTEGER_32
is 29
constant attribute
{}
state_in_pre: INTEGER_32
is 30
constant attribute
{}
state_in_form: INTEGER_32
is 40
constant attribute
{}
state_in_select: INTEGER_32
is 41
constant attribute
{}
state_in_option: INTEGER_32
is 42
constant attribute
{}
state_in_frames: INTEGER_32
is 50
constant attribute
{}
state_in_frameset: INTEGER_32
is 51
constant attribute
{}
state_in_noframes: INTEGER_32
is 52
constant attribute
{}
state_in_span: INTEGER_32
is 53
constant attribute
{}
state_in_definition_list: INTEGER_32
is 60
constant attribute
{}
state_in_definition_description: INTEGER_32
is 61
constant attribute
{}
state_in_definition_term: INTEGER_32
is 62
constant attribute
{}
state_over: INTEGER_32
is 99
constant attribute
{}
pipe_character (c: CHARACTER)
effective procedure
{}
Put the character down the pipe.
pipe_string (s: STRING)
effective procedure
{}
Put the whole string down the pipe.
pipe_quoted_string (quoted: STRING)
effective procedure
{}
quote_quotes (quoted: STRING, in: STRING)
effective procedure
{}
Internal transformation in tag attributes
make
effective procedure
{ANY}
connect_to (a_stream: OUTPUT_STREAM)
effective procedure
{ANY}
Connect the filter to some underlying stream.
local_can_disconnect: BOOLEAN
effective function
{}
True if this stream can be safely disconnected (without data loss, etc.)
writable attribute
{}
writable attribute
{}
has_cgi_header: BOOLEAN
writable attribute
{}
are there any CGI headers before the HTML itself is inserted?
last_character_is_new_line: BOOLEAN
writable attribute
{}
True if the last put character was a '%N'
os_key_colon: STRING
is ": "
constant attribute
{}
os_html_header: STRING
is "<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "dtd/xhtml1-transitional.dtd"> <html> <head> "
constant attribute
{}
os_html_body_start: STRING
is "</head> <body"
constant attribute
{}
os_html_body_footer: STRING
is "</body> </html> "
constant attribute
{}
os_html_frames_footer: STRING
is "</html> "
constant attribute
{}
os_start_comment: STRING
is "<!-- "
constant attribute
{}
os_end_comment: STRING
is " -->"
constant attribute
{}
os_entity_quot: STRING
is "&quot;"
constant attribute
{}
os_entity_lt: STRING
is "&lt;"
constant attribute
{}
os_entity_gt: STRING
is "&gt;"
constant attribute
{}
os_entity_amp: STRING
is "&amp;"
constant attribute
{}
os_base: STRING
is "<base href='"
constant attribute
{}
os_end_open_close_tag_attrib: STRING
is "'/>"
constant attribute
{}
os_meta_equiv: STRING
is "<meta http-equiv='"
constant attribute
{}
os_attrib_content: STRING
is "' content='"
constant attribute
{}
os_attrib_type: STRING
is "' type='"
constant attribute
{}
os_stylesheet: STRING
is "<link rel='StyleSheet' type='text/css' href='"
constant attribute
{}
os_text_javascript: STRING
is "text/javascript"
constant attribute
{}
os_title: STRING
is "title"
constant attribute
{}
os_script_begin: STRING
is "<script language='"
constant attribute
{}
os_attrib_src: STRING
is "' src='"
constant attribute
{}
os_script_end: STRING
is "'></script>"
constant attribute
{}
os_language: STRING
is "language"
constant attribute
{}
os_javascript: STRING
is "javascript"
constant attribute
{}
os_script: STRING
is "script"
constant attribute
{}
os_h1: STRING
is "h1"
constant attribute
{}
os_h2: STRING
is "h2"
constant attribute
{}
os_h3: STRING
is "h3"
constant attribute
{}
os_br: STRING
is "br"
constant attribute
{}
os_hr: STRING
is "hr"
constant attribute
{}
os_img: STRING
is "img"
constant attribute
{}
os_src: STRING
is "src"
constant attribute
{}
os_b: STRING
is "b"
constant attribute
{}
os_i: STRING
is "i"
constant attribute
{}
os_u: STRING
is "u"
constant attribute
{}
os_tt: STRING
is "tt"
constant attribute
{}
os_size: STRING
is "size"
constant attribute
{}
os_font: STRING
is "font"
constant attribute
{}
os_pre: STRING
is "pre"
constant attribute
{}
os_href: STRING
is "href"
constant attribute
{}
os_target: STRING
is "target"
constant attribute
{}
os_name: STRING
is "name"
constant attribute
{}
os_a: STRING
is "a"
constant attribute
{}
os_ul: STRING
is "ul"
constant attribute
{}
os_dt: STRING
is "dt"
constant attribute
{}
os_dd: STRING
is "dd"
constant attribute
{}
os_dl: STRING
is "dl"
constant attribute
{}
os_ol: STRING
is "ol"
constant attribute
{}
os_li: STRING
is "li"
constant attribute
{}
os_table: STRING
is "table"
constant attribute
{}
os_tr: STRING
is "tr"
constant attribute
{}
os_td: STRING
is "td"
constant attribute
{}
os_method_get: STRING
is "GET"
constant attribute
{}
os_method_post: STRING
is "POST"
constant attribute
{}
os_method: STRING
is "method"
constant attribute
{}
os_action: STRING
is "action"
constant attribute
{}
os_form: STRING
is "form"
constant attribute
{}
os_rows: STRING
is "rows"
constant attribute
{}
os_cols: STRING
is "cols"
constant attribute
{}
os_textarea: STRING
is "textarea"
constant attribute
{}
os_submit: STRING
is "submit"
constant attribute
{}
os_button: STRING
is "button"
constant attribute
{}
os_reset: STRING
is "reset"
constant attribute
{}
os_hidden: STRING
is "hidden"
constant attribute
{}
os_password: STRING
is "password"
constant attribute
{}
os_text: STRING
is "text"
constant attribute
{}
os_radio: STRING
is "radio"
constant attribute
{}
os_checkbox: STRING
is "checkbox"
constant attribute
{}
os_select: STRING
is "select"
constant attribute
{}
os_multiple: STRING
is "multiple"
constant attribute
{}
os_value: STRING
is "value"
constant attribute
{}
os_option: STRING
is "option"
constant attribute
{}
os_type: STRING
is "type"
constant attribute
{}
os_checked: STRING
is "checked"
constant attribute
{}
os_input: STRING
is "input"
constant attribute
{}
os_frameset: STRING
is "frameset"
constant attribute
{}
os_frame: STRING
is "frame"
constant attribute
{}
os_noframes: STRING
is "noframes"
constant attribute
{}
os_paragraph: STRING
is "p"
constant attribute
{}
os_blockquote: STRING
is "blockquote"
constant attribute
{}
os_div: STRING
is "div"
constant attribute
{}
os_span: STRING
is "span"
constant attribute
{}
os: STRING
is ""
constant attribute
{}
used as a buffer
disconnect
effective procedure
{ANY}
Disconnect from the underlying stream.
do_detach
effective procedure
Used by the underlying stream to require not to be filtered anymore
stream: OUTPUT_STREAM
writable attribute
{}
The underlying stream (i.e. the filtered one)
put_character (c: CHARACTER)
effective procedure
{ANY}
flush
effective procedure
{ANY}
Flushes the pipe.
detach
effective procedure
{ANY}
Shake off the filter.
writable attribute
The filter that uses this stream as backend
event_can_write: EVENT_DESCRIPTOR
effective function
{ANY}
writable attribute
{}
new_url: URL
effective function
{}
as_output_stream: OUTPUT_STREAM
effective function
{}
is_connected: BOOLEAN
deferred function
{ANY}
True if the stream is connected.
descriptor: INTEGER_32
effective function
{ANY}
Some OS-dependent descriptor.
has_descriptor: BOOLEAN
effective function
{ANY}
True if that stream can be associated to some OS-meaningful descriptor.
can_disconnect: BOOLEAN
deferred function
{ANY}
True if the stream can be safely disconnected (without data loss, etc.)
url: URL
frozen
effective function
{ANY}
The URL to this stream as resource
url_memory: URL
writable attribute
{}
stream_pointer: POINTER
effective function
Some Back-end-dependent pointer (FILE* in C, InputStream or OutputStream in Java)
has_stream_pointer: BOOLEAN
effective function
True if that stream can be associated to some Back-end-meaningful stream pointer.
filtered_descriptor: INTEGER_32
deferred function
Find the descriptor of the terminal stream...
filtered_has_descriptor: BOOLEAN
deferred function
True if the underlying terminal stream has a descriptor
filtered_stream_pointer: POINTER
deferred function
Find the pointer of the terminal stream...
filtered_has_stream_pointer: BOOLEAN
deferred function
True if the underlying terminal stream has a pointer
event_exception: EVENT_DESCRIPTOR
effective function
{ANY}
stream_exception: STREAM_EXCEPTION
writable attribute
{}
recycle
effective procedure
Do whatever needs to be done to free resources or recycle other objects when recycling this one
dispose
effective procedure
{}
Action to be executed just before garbage collection reclaims an object.
sequencer_descriptor (file: POINTER): INTEGER_32
{}
is_filtered: BOOLEAN
deferred function
{ANY}
put_natively_stored_string (s: NATIVELY_STORED_STRING)
effective procedure
put_abstract_string (s: ABSTRACT_STRING)
effective procedure
put_string (s: ABSTRACT_STRING)
effective procedure
{ANY}
Output s to current output device.
put_unicode_string (unicode_string: UNICODE_STRING)
effective procedure
{ANY}
Output the UTF-8 encoding of the unicode_string.
put_line (s: ABSTRACT_STRING)
effective procedure
{ANY}
Output the string followed by a '%N'.
put_integer (i: INTEGER_64)
frozen
effective procedure
{ANY}
Output i to current output device.
put_integer_format (i: INTEGER_64, s: INTEGER_32)
frozen
effective procedure
{ANY}
Output i to current output device using at most s character.
put_natural_8 (n: NATURAL_8)
frozen
effective procedure
{ANY}
Output n to current output device.
put_natural_8_format (n: NATURAL_8, s: INTEGER_32)
frozen
effective procedure
{ANY}
Output n to current output device using at most s character.
put_natural_16 (n: NATURAL_16)
frozen
effective procedure
{ANY}
Output n to current output device.
put_natural_16_format (n: NATURAL_16, s: INTEGER_32)
frozen
effective procedure
{ANY}
Output n to current output device using at most s character.
put_natural_32 (n: NATURAL_32)
frozen
effective procedure
{ANY}
Output n to current output device.
put_natural_32_format (n: NATURAL_32, s: INTEGER_32)
frozen
effective procedure
{ANY}
Output n to current output device using at most s character.
put_natural_64 (n: NATURAL_64)
frozen
effective procedure
{ANY}
Output n to current output device.
put_natural_64_format (n: NATURAL_64, s: INTEGER_32)
frozen
effective procedure
{ANY}
Output n to current output device using at most s character.
put_real (r: REAL_64)
effective procedure
{ANY}
Output r to current output device.
put_real_format (r: REAL_64, f: INTEGER_32)
effective procedure
{ANY}
Output r with only f digit for the fractional part.
put_real_scientific (r: REAL_64, f: INTEGER_32)
effective procedure
{ANY}
Output r using the scientific notation with only f digit for the fractional part.
put_number (number: NUMBER)
effective procedure
{ANY}
Output the number.
put_boolean (b: BOOLEAN)
effective procedure
{ANY}
Output b to current output device according to the Eiffel format.
put_pointer (p: POINTER)
effective procedure
{ANY}
Output a viewable version of p.
put_new_line
effective procedure
{ANY}
Output a newline character.
put_spaces (nb: INTEGER_32)
effective procedure
{ANY}
Output nb spaces character.
append_file (file_name: STRING)
effective procedure
{ANY}
tmp_file_read: TEXT_FILE_READ
once function
{}
tmp_string: STRING
once function
{}
io_putc (byte: CHARACTER, stream: POINTER)
{}
io_fwrite (buf: NATIVE_ARRAY[CHARACTER], size: INTEGER_32, stream: POINTER): INTEGER_32
{}
io_flush (stream: POINTER)
{}
set_filter (a_filter: FILTER)
effective procedure
Used by the filter itself to get attached