The hsx Reference Manual

This is the hsx Reference Manual, version 0.1.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 06:23:10 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 hsx

Hypertext S-expression

Maintainer

skyizwhite <>

Author

skyizwhite, Bo Yao

License

MIT

Long Description

# HSX

HSX (Hypertext S-expression) is a simple yet powerful HTML5 generation library for Common Lisp. It was forked from [flute](https://github.com/ailisp/flute/).

## Introduction

HSX allows you to generate HTML using S-expressions, providing a more Lisp-friendly way to create web content. By using the ‘hsx‘ macro, you can define HTML elements and their attributes in a concise and readable manner.

## Getting Started

### Basic Usage

Use the ‘hsx‘ macro to create HTML elements. Attributes are specified using a property list following the element name, and child elements are nested directly within.

“‘lisp
(hsx
(div :id "example" :class "container"
(h1 "Welcome to HSX")
(p "This is an example paragraph.")))
“‘

This generates:

“‘html
<div id="example" class="container">
<h1>Welcome to HSX</h1>
<p>This is an example paragraph.</p>
</div>
“‘

## Examples

### Dynamic Content

HSX allows embedding Common Lisp code directly within your HTML structure, making it easy to generate dynamic content.

“‘lisp
(hsx
(div
(p :id (format nil "id-~a" (random 100)))
(ul
(loop :for i :from 1 :to 5 :collect (li (format nil "Item ~a" i))))
(if (> (random 10) 5)
(p "Condition met!")
(p "Condition not met!"))))
“‘

This might generate:

“‘html
<div>
<p id="id-42"></p>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
<p>Condition not met!</p>
</div>
“‘

### Using Fragments

To group multiple elements without adding an extra wrapper, use the fragment ‘<>‘.

“‘lisp
(hsx
(<>
(h1 "Grouped Elements")
(p "First paragraph.")
(p "Second paragraph.")))
“‘

This generates:

“‘html
<h1>Grouped Elements</h1>
<p>First paragraph.</p>
<p>Second paragraph.</p>
“‘

## Creating Components

You can define reusable components with the ‘defcomp‘ macro. Components are functions that can take keyword arguments and properties.

“‘lisp
(defcomp card (&key title children)
(hsx
(div :class "card"
(h1 title)
children)))
“‘

Or using a property list:

“‘lisp
(defcomp card (&rest props)
(hsx
(div :class "card"
(h1 (getf props :title))
(getf props :children))))
“‘

Usage example:

“‘lisp
(hsx
(card :title "Card Title"
(p "This is a card component.")))
“‘

Generates:

“‘html
<div class="card">
<h1>Card Title</h1>
<p>This is a card component.</p>
</div>
“‘

## Rendering HTML

To render HSX to an HTML string, use the ‘render-to-string‘ function.

“‘lisp
(render-to-string
(hsx
(div :class "content"
(h1 "Rendered to String")
(p "This HTML is generated as a string."))))
“‘

## License

This project is licensed under the MIT License.

© 2024 skyizwhite

© 2018 Bo Yao

Feel free to contribute to the project and report any issues or feature requests on the [GitHub repository](https://github.com/skyizwhite/hsx).

Version

0.1.0

Dependency

hsx/main (system).

Source

hsx.asd.


2.2 hsx/main

Maintainer

skyizwhite <>

Author

skyizwhite, Bo Yao

License

MIT

Dependencies
Source

hsx.asd.


2.3 hsx/element

Maintainer

skyizwhite <>

Author

skyizwhite, Bo Yao

License

MIT

Dependencies
Source

hsx.asd.


2.4 hsx/utils

Maintainer

skyizwhite <>

Author

skyizwhite, Bo Yao

License

MIT

Dependency

alexandria (system).

Source

hsx.asd.


2.5 hsx/dsl

Maintainer

skyizwhite <>

Author

skyizwhite, Bo Yao

License

MIT

Dependencies
Source

hsx.asd.


2.6 hsx/builtin

Maintainer

skyizwhite <>

Author

skyizwhite, Bo Yao

License

MIT

Dependency

hsx/dsl (system).

Source

hsx.asd.


3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 hsx/hsx.asd

Source

hsx.asd.

Parent Component

hsx (system).

ASDF Systems

3.1.2 hsx/main/file-type.lisp

Source

hsx.asd.

Parent Component

hsx/main (system).

Packages

hsx.


3.1.3 hsx/element/file-type.lisp

Source

hsx.asd.

Parent Component

hsx/element (system).

Packages

hsx/element.

Public Interface
Internals

3.1.4 hsx/utils/file-type.lisp

Source

hsx.asd.

Parent Component

hsx/utils (system).

Packages

hsx/utils.

Public Interface
Internals

3.1.5 hsx/dsl/file-type.lisp

Source

hsx.asd.

Parent Component

hsx/dsl (system).

Packages

hsx/dsl.

Public Interface
Internals

3.1.6 hsx/builtin/file-type.lisp

Source

hsx.asd.

Parent Component

hsx/builtin (system).

Packages

hsx/builtin.

Public Interface
Internals

define-builtin-tags (macro).


4 Packages

Packages are listed by definition order.


4.1 hsx/utils

Source

file-type.lisp.

Use List

common-lisp.

Public Interface
Internals

4.2 hsx/builtin

Source

file-type.lisp.

Use List

common-lisp.

Public Interface
Internals

define-builtin-tags (macro).


4.3 hsx/element

Source

file-type.lisp.

Use List

common-lisp.

Used By List

hsx.

Public Interface
Internals

4.4 hsx/dsl

Source

file-type.lisp.

Use List

common-lisp.

Used By List

hsx.

Public Interface
Internals

4.5 hsx

Source

file-type.lisp.

Nickname

hsx/main

Use List

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Macros

Macro: <> (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: a (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: abbr (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: address (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: area (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: article (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: aside (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: audio (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: b (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: base (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: bdi (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: bdo (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: blockquote (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: body (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: br (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: button (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: canvas (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: caption (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: cite (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: code (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: col (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: colgroup (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: data (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: datalist (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: dd (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: defcomp (name props &body body)

Define a function component for use in HSX.
The props must be declared with either &key or &rest (or both). The body must return an HSX element.

Package

hsx/dsl.

Source

file-type.lisp.

Macro: defgroup (name &body symbols)
Package

hsx/utils.

Source

file-type.lisp.

Macro: deftag (name)
Package

hsx/dsl.

Source

file-type.lisp.

Macro: del (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: details (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: dfn (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: dialog (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: div (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: dl (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: dt (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: em (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: embed (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: fieldset (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: figcaption (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: figure (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Package

hsx/builtin.

Source

file-type.lisp.

Macro: form (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: h1 (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: h2 (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: h3 (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: h4 (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: h5 (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: h6 (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: head (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: header (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: hr (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: hsx (form)

Detect built-in HSX elements and automatically import them.

Package

hsx/dsl.

Source

file-type.lisp.

Macro: html (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: i (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: iframe (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: img (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: input (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: ins (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: kbd (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: label (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: legend (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: li (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Package

hsx/builtin.

Source

file-type.lisp.

Macro: main (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: map (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: mark (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: meta (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: meter (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: nav (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: noscript (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: object (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: ol (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: optgroup (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: option (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: output (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: p (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: param (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: picture (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: pre (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: progress (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: q (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: rp (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: rt (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: ruby (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: s (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: samp (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: script (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: section (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: select (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: small (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: source (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: span (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: strong (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: style (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: sub (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: summary (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: sup (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: svg (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: table (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: tbody (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: td (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: template (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: textarea (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: tfoot (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: th (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: thead (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: time (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: title (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: tr (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: track (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: u (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: ul (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: var (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: video (&body body)
Package

hsx/builtin.

Source

file-type.lisp.

Macro: wbr (&body body)
Package

hsx/builtin.

Source

file-type.lisp.


5.1.2 Ordinary functions

Function: create-element (type props children)
Package

hsx/element.

Source

file-type.lisp.

Function: escape-html-attribute (str)
Package

hsx/utils.

Source

file-type.lisp.

Function: escape-html-text-content (str)
Package

hsx/utils.

Source

file-type.lisp.


5.1.3 Generic functions

Generic Reader: element-children (object)
Package

hsx/element.

Methods
Reader Method: element-children ((element element))

automatically generated reader method

Source

file-type.lisp.

Target Slot

children.

Generic Reader: element-props (object)
Package

hsx/element.

Methods
Reader Method: element-props ((element element))

automatically generated reader method

Source

file-type.lisp.

Target Slot

props.

Generic Reader: element-type (object)
Package

hsx/element.

Methods
Reader Method: element-type ((element element))

automatically generated reader method

Source

file-type.lisp.

Target Slot

type.

Generic Function: expand-component (element)
Package

hsx/element.

Methods
Method: expand-component ((element component))
Source

file-type.lisp.

Generic Function: render-to-string (element &key pretty)

Render an HSX element to a string.

Package

hsx/element.

Source

file-type.lisp.

Methods
Method: render-to-string ((element element) &key pretty)

5.1.4 Standalone methods

Method: print-object ((element fragment) stream)
Source

file-type.lisp.

Method: print-object ((element self-closing-tag) stream)
Source

file-type.lisp.

Method: print-object ((element html-tag) stream)
Source

file-type.lisp.

Method: print-object ((element component) stream)
Source

file-type.lisp.

Method: print-object ((element tag) stream)
Source

file-type.lisp.


5.1.5 Classes

Class: component
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

element.

Direct methods
Class: element
Package

hsx/element.

Source

file-type.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: type
Package

common-lisp.

Initargs

:type

Readers

element-type.

Writers

This slot is read-only.

Slot: props
Initargs

:props

Readers

element-props.

Writers

This slot is read-only.

Slot: children
Initargs

:children

Readers

element-children.

Writers

This slot is read-only.

Class: fragment
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

tag.

Direct methods

print-object.

Class: html-tag
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

tag.

Direct methods

print-object.

Class: non-escaping-tag
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

tag.

Direct methods

render-children.

Class: self-closing-tag
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

tag.

Direct methods

print-object.

Class: tag
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

element.

Direct subclasses
Direct methods

5.2 Internals


5.2.1 Special variables

Special Variable: *attribute-escape-map*
Package

hsx/utils.

Source

file-type.lisp.

Special Variable: *non-escaping-tag*
Package

hsx/element.

Source

file-type.lisp.

Special Variable: *self-closing-tag*
Package

hsx/element.

Source

file-type.lisp.

Special Variable: *text-content-escape-map*
Package

hsx/utils.

Source

file-type.lisp.


5.2.2 Macros

Macro: defhsx (name element-type)
Package

hsx/dsl.

Source

file-type.lisp.

Macro: define-builtin-tags (&rest names)
Package

hsx/builtin.

Source

file-type.lisp.


5.2.3 Ordinary functions

Function: %create-element (type &rest body)
Package

hsx/dsl.

Source

file-type.lisp.

Function: escape-char (char escape-map)
Package

hsx/utils.

Source

file-type.lisp.

Function: escape-string (str escape-map)
Package

hsx/utils.

Source

file-type.lisp.

Function: find-builtin-symbols (node)
Package

hsx/dsl.

Source

file-type.lisp.

Function: flatten (x)
Package

hsx/element.

Source

file-type.lisp.

Function: make-keyword-hash-table (symbols)
Package

hsx/utils.

Source

file-type.lisp.

Function: non-escaping-tag-p (keyword)
Package

hsx/element.

Source

file-type.lisp.

Function: parse-body (body)
Package

hsx/dsl.

Source

file-type.lisp.

Function: self-closing-tag-p (keyword)
Package

hsx/element.

Source

file-type.lisp.


5.2.4 Generic functions

Generic Function: element-props-with-children (element)
Package

hsx/element.

Methods
Method: element-props-with-children ((element component))
Source

file-type.lisp.

Generic Function: render-children (element)
Package

hsx/element.

Methods
Method: render-children ((element non-escaping-tag))
Source

file-type.lisp.

Method: render-children ((element tag))
Source

file-type.lisp.

Generic Function: render-props (element)
Package

hsx/element.

Methods
Method: render-props ((element tag))
Source

file-type.lisp.

Generic Function: render-type (element)
Package

hsx/element.

Methods
Method: render-type ((element tag))
Source

file-type.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   <  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   Q   R   S   T   U   V   W  
Index Entry  Section

%
%create-element: Private ordinary functions

<
<>: Public macros

A
a: Public macros
abbr: Public macros
address: Public macros
area: Public macros
article: Public macros
aside: Public macros
audio: Public macros

B
b: Public macros
base: Public macros
bdi: Public macros
bdo: Public macros
blockquote: Public macros
body: Public macros
br: Public macros
button: Public macros

C
canvas: Public macros
caption: Public macros
cite: Public macros
code: Public macros
col: Public macros
colgroup: Public macros
create-element: Public ordinary functions

D
data: Public macros
datalist: Public macros
dd: Public macros
defcomp: Public macros
defgroup: Public macros
defhsx: Private macros
define-builtin-tags: Private macros
deftag: Public macros
del: Public macros
details: Public macros
dfn: Public macros
dialog: Public macros
div: Public macros
dl: Public macros
dt: Public macros

E
element-children: Public generic functions
element-children: Public generic functions
element-props: Public generic functions
element-props: Public generic functions
element-props-with-children: Private generic functions
element-props-with-children: Private generic functions
element-type: Public generic functions
element-type: Public generic functions
em: Public macros
embed: Public macros
escape-char: Private ordinary functions
escape-html-attribute: Public ordinary functions
escape-html-text-content: Public ordinary functions
escape-string: Private ordinary functions
expand-component: Public generic functions
expand-component: Public generic functions

F
fieldset: Public macros
figcaption: Public macros
figure: Public macros
find-builtin-symbols: Private ordinary functions
flatten: Private ordinary functions
footer: Public macros
form: Public macros
Function, %create-element: Private ordinary functions
Function, create-element: Public ordinary functions
Function, escape-char: Private ordinary functions
Function, escape-html-attribute: Public ordinary functions
Function, escape-html-text-content: Public ordinary functions
Function, escape-string: Private ordinary functions
Function, find-builtin-symbols: Private ordinary functions
Function, flatten: Private ordinary functions
Function, make-keyword-hash-table: Private ordinary functions
Function, non-escaping-tag-p: Private ordinary functions
Function, parse-body: Private ordinary functions
Function, self-closing-tag-p: Private ordinary functions

G
Generic Function, element-children: Public generic functions
Generic Function, element-props: Public generic functions
Generic Function, element-props-with-children: Private generic functions
Generic Function, element-type: Public generic functions
Generic Function, expand-component: Public generic functions
Generic Function, render-children: Private generic functions
Generic Function, render-props: Private generic functions
Generic Function, render-to-string: Public generic functions
Generic Function, render-type: Private generic functions

H
h1: Public macros
h2: Public macros
h3: Public macros
h4: Public macros
h5: Public macros
h6: Public macros
head: Public macros
header: Public macros
hr: Public macros
hsx: Public macros
html: Public macros

I
i: Public macros
iframe: Public macros
img: Public macros
input: Public macros
ins: Public macros

K
kbd: Public macros

L
label: Public macros
legend: Public macros
li: Public macros
link: Public macros

M
Macro, <>: Public macros
Macro, a: Public macros
Macro, abbr: Public macros
Macro, address: Public macros
Macro, area: Public macros
Macro, article: Public macros
Macro, aside: Public macros
Macro, audio: Public macros
Macro, b: Public macros
Macro, base: Public macros
Macro, bdi: Public macros
Macro, bdo: Public macros
Macro, blockquote: Public macros
Macro, body: Public macros
Macro, br: Public macros
Macro, button: Public macros
Macro, canvas: Public macros
Macro, caption: Public macros
Macro, cite: Public macros
Macro, code: Public macros
Macro, col: Public macros
Macro, colgroup: Public macros
Macro, data: Public macros
Macro, datalist: Public macros
Macro, dd: Public macros
Macro, defcomp: Public macros
Macro, defgroup: Public macros
Macro, defhsx: Private macros
Macro, define-builtin-tags: Private macros
Macro, deftag: Public macros
Macro, del: Public macros
Macro, details: Public macros
Macro, dfn: Public macros
Macro, dialog: Public macros
Macro, div: Public macros
Macro, dl: Public macros
Macro, dt: Public macros
Macro, em: Public macros
Macro, embed: Public macros
Macro, fieldset: Public macros
Macro, figcaption: Public macros
Macro, figure: Public macros
Macro, footer: Public macros
Macro, form: Public macros
Macro, h1: Public macros
Macro, h2: Public macros
Macro, h3: Public macros
Macro, h4: Public macros
Macro, h5: Public macros
Macro, h6: Public macros
Macro, head: Public macros
Macro, header: Public macros
Macro, hr: Public macros
Macro, hsx: Public macros
Macro, html: Public macros
Macro, i: Public macros
Macro, iframe: Public macros
Macro, img: Public macros
Macro, input: Public macros
Macro, ins: Public macros
Macro, kbd: Public macros
Macro, label: Public macros
Macro, legend: Public macros
Macro, li: Public macros
Macro, link: Public macros
Macro, main: Public macros
Macro, map: Public macros
Macro, mark: Public macros
Macro, meta: Public macros
Macro, meter: Public macros
Macro, nav: Public macros
Macro, noscript: Public macros
Macro, object: Public macros
Macro, ol: Public macros
Macro, optgroup: Public macros
Macro, option: Public macros
Macro, output: Public macros
Macro, p: Public macros
Macro, param: Public macros
Macro, picture: Public macros
Macro, pre: Public macros
Macro, progress: Public macros
Macro, q: Public macros
Macro, rp: Public macros
Macro, rt: Public macros
Macro, ruby: Public macros
Macro, s: Public macros
Macro, samp: Public macros
Macro, script: Public macros
Macro, section: Public macros
Macro, select: Public macros
Macro, small: Public macros
Macro, source: Public macros
Macro, span: Public macros
Macro, strong: Public macros
Macro, style: Public macros
Macro, sub: Public macros
Macro, summary: Public macros
Macro, sup: Public macros
Macro, svg: Public macros
Macro, table: Public macros
Macro, tbody: Public macros
Macro, td: Public macros
Macro, template: Public macros
Macro, textarea: Public macros
Macro, tfoot: Public macros
Macro, th: Public macros
Macro, thead: Public macros
Macro, time: Public macros
Macro, title: Public macros
Macro, tr: Public macros
Macro, track: Public macros
Macro, u: Public macros
Macro, ul: Public macros
Macro, var: Public macros
Macro, video: Public macros
Macro, wbr: Public macros
main: Public macros
make-keyword-hash-table: Private ordinary functions
map: Public macros
mark: Public macros
meta: Public macros
meter: Public macros
Method, element-children: Public generic functions
Method, element-props: Public generic functions
Method, element-props-with-children: Private generic functions
Method, element-type: Public generic functions
Method, expand-component: Public generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, render-children: Private generic functions
Method, render-children: Private generic functions
Method, render-props: Private generic functions
Method, render-to-string: Public generic functions
Method, render-type: Private generic functions

N
nav: Public macros
non-escaping-tag-p: Private ordinary functions
noscript: Public macros

O
object: Public macros
ol: Public macros
optgroup: Public macros
option: Public macros
output: Public macros

P
p: Public macros
param: Public macros
parse-body: Private ordinary functions
picture: Public macros
pre: Public macros
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
progress: Public macros

Q
q: Public macros

R
render-children: Private generic functions
render-children: Private generic functions
render-children: Private generic functions
render-props: Private generic functions
render-props: Private generic functions
render-to-string: Public generic functions
render-to-string: Public generic functions
render-type: Private generic functions
render-type: Private generic functions
rp: Public macros
rt: Public macros
ruby: Public macros

S
s: Public macros
samp: Public macros
script: Public macros
section: Public macros
select: Public macros
self-closing-tag-p: Private ordinary functions
small: Public macros
source: Public macros
span: Public macros
strong: Public macros
style: Public macros
sub: Public macros
summary: Public macros
sup: Public macros
svg: Public macros

T
table: Public macros
tbody: Public macros
td: Public macros
template: Public macros
textarea: Public macros
tfoot: Public macros
th: Public macros
thead: Public macros
time: Public macros
title: Public macros
tr: Public macros
track: Public macros

U
u: Public macros
ul: Public macros

V
var: Public macros
video: Public macros

W
wbr: Public macros


A.4 Data types

Jump to:   C   E   F   H   N   P   S   T  
Index Entry  Section

C
Class, component: Public classes
Class, element: Public classes
Class, fragment: Public classes
Class, html-tag: Public classes
Class, non-escaping-tag: Public classes
Class, self-closing-tag: Public classes
Class, tag: Public classes
component: Public classes

E
element: Public classes

F
File, file-type.lisp: The hsx/main/file-type․lisp file
File, file-type.lisp: The hsx/element/file-type․lisp file
File, file-type.lisp: The hsx/utils/file-type․lisp file
File, file-type.lisp: The hsx/dsl/file-type․lisp file
File, file-type.lisp: The hsx/builtin/file-type․lisp file
File, hsx.asd: The hsx/hsx․asd file
file-type.lisp: The hsx/main/file-type․lisp file
file-type.lisp: The hsx/element/file-type․lisp file
file-type.lisp: The hsx/utils/file-type․lisp file
file-type.lisp: The hsx/dsl/file-type․lisp file
file-type.lisp: The hsx/builtin/file-type․lisp file
fragment: Public classes

H
hsx: The hsx system
hsx: The hsx package
hsx.asd: The hsx/hsx․asd file
hsx/builtin: The hsx/builtin system
hsx/builtin: The hsx/builtin package
hsx/dsl: The hsx/dsl system
hsx/dsl: The hsx/dsl package
hsx/element: The hsx/element system
hsx/element: The hsx/element package
hsx/main: The hsx/main system
hsx/utils: The hsx/utils system
hsx/utils: The hsx/utils package
html-tag: Public classes

N
non-escaping-tag: Public classes

P
Package, hsx: The hsx package
Package, hsx/builtin: The hsx/builtin package
Package, hsx/dsl: The hsx/dsl package
Package, hsx/element: The hsx/element package
Package, hsx/utils: The hsx/utils package

S
self-closing-tag: Public classes
System, hsx: The hsx system
System, hsx/builtin: The hsx/builtin system
System, hsx/dsl: The hsx/dsl system
System, hsx/element: The hsx/element system
System, hsx/main: The hsx/main system
System, hsx/utils: The hsx/utils system

T
tag: Public classes