@@ -171,7 +171,7 @@ variables.
171171: The name used to involve the filter. This value can be used
172172 to find files relative to the script file. This variable is
173173 also set in custom writers.
174−
174+
175175`PANDOC_STATE`
176176: The state shared by all readers and writers. It is used by
177177 pandoc to collect and pass information. The value of this
@@ -641,6 +641,9 @@ to create these objects.
641641
642642Pandoc document
643643
644+Object equality is determined via
645+[`pandoc.utils.equals`](#utils-equals).
646+
644647`blocks`
645648: document content ([List] of [Block]s)
646649
@@ -653,10 +656,16 @@ Pandoc document
653656Meta information on a document; string-indexed collection of
654657[MetaValue]s.
655658
659+Object equality is determined via
660+[`pandoc.utils.equals`](#utils-equals).
661+
656662## MetaValue {#type-ref-MetaValue}
657663
658664Document meta information items.
659665
666+Object equality is determined via
667+[`pandoc.utils.equals`](#utils-equals).
668+
660669### MetaBlocks {#type-ref-MetaBlocks}
661670
662671A list of blocks usable as meta value ([List] of [Block]s)
@@ -707,6 +716,9 @@ Plain Lua string value (string)
707716
708717## Block {#type-ref-Block}
709718
719+Object equality is determined via
720+[`pandoc.utils.equals`](#utils-equals).
721+
710722### BlockQuote {#type-ref-BlockQuote}
711723
712724A block quote element
@@ -926,6 +938,9 @@ centered).
926938
927939## Inline {#type-ref-Inline}
928940
941+Object equality is determined via
942+[`pandoc.utils.equals`](#utils-equals).
943+
929944### Cite {#type-ref-Cite}
930945Citation
931946
@@ -1166,6 +1181,9 @@ Superscripted text
11661181
11671182A set of element attributes
11681183
1184+Object equality is determined via
1185+[`pandoc.utils.equals`](#utils-equals).
1186+
11691187`identifier`
11701188: element identifier (string)
11711189
@@ -1184,6 +1202,9 @@ indices to the list table.
11841202
11851203Single citation entry
11861204
1205+Object equality is determined via
1206+[`pandoc.utils.equals`](#utils-equals).
1207+
11871208`id`
11881209: citation identifier, e.g., a bibtex key (string)
11891210
@@ -1206,6 +1227,9 @@ Single citation entry
12061227### ListAttributes {#type-ref-ListAttributes}
12071228List attributes
12081229
1230+Object equality is determined via
1231+[`pandoc.utils.equals`](#utils-equals).
1232+
12091233`start`
12101234: number of the first list item (integer)
12111235
@@ -2202,6 +2226,28 @@ functions.
22022226 -- pandoc.Emph{ pandoc.Str 'Paragraph2' }
22032227 -- }
22042228
2229+[`equals (element1, element2)`]{#utils-equals}
2230+
2231+: Test equality of AST elements. Elements in Lua are considered
2232+ equal if and only if the objects obtained by unmarshaling are
2233+ equal.
2234+
2235+ Parameters:
2236+
2237+ `element1`, `element2`:
2238+ : Objects to be compared. Acceptable input types are
2239+ [Pandoc](#type-ref-pandoc), [Meta](#type-ref-meta),
2240+ [MetaValue](#type-ref-MetaValue),
2241+ [Block](#type-ref-Block), [Inline](#type-ref-Inline),
2242+ [Attr](#type-ref-Attr),
2243+ [ListAttributes](#type-ref-ListAttributes), and
2244+ [Citation](#type-ref-Citation).
2245+
2246+ Returns:
2247+
2248+ - Whether the two objects represent the same element
2249+ (boolean)
2250+
22052251[`hierarchicalize (blocks)`]{#utils-hierarchicalize}
22062252
22072253: Convert list of blocks into an hierarchical list. An