{"schema":1,"title":"API glossary","description":"Kinds, modifiers and package labels in the Erlang API reference.","url":"https://libtmux.org/en/erlang/latest/reference/glossary/","groups":[{"id":"symbol-kinds","title":"Symbol kinds","description":"Kinds identify declarations in the Erlang API reference.","terms":[{"id":"module","definition":"An Erlang module grouping function, type and record declarations under an atom name.","detail":"Exports identify which functions, types and native records callers can use. Maps, lists and records are values passed explicitly to module functions.","references":[{"title":"Erlang modules","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/reference_manual/modules.md"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#module"},{"id":"struct","definition":"An exported Erlang native record with a fixed set of named fields, owned by its defining module.","detail":"Session, window, window-link and pane rows use native records. Import an exported definition with -import_record(tmux_model, [pane]). Native records remain experimental in OTP 29.1.2; their internals are not a wire format.","references":[{"title":"Erlang native records","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/reference_manual/ref_man_native_records.md"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#struct"},{"id":"function","definition":"An Erlang function identified by its module, name and arity, the number of arguments.","detail":"Functions sharing a name with different arities are distinct. Multiple clauses belong to one function; patterns and guards select the clause to execute.","references":[{"title":"Erlang functions","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/reference_manual/ref_man_functions.md"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#function"},{"id":"typealias","definition":"An Erlang type declaration written with -type, -opaque or -nominal, identified by module, name and arity.","detail":"The shared typealias badge includes nominal IDs: Dialyzer distinguishes their declared names even when each is represented by a binary. Typespecs support analysis and documentation; runtime input validation remains necessary.","references":[{"title":"Erlang user-defined types","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/reference_manual/typespec.md#type-declarations-of-user-defined-types"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#typealias"}]},{"id":"modifiers","title":"Modifiers","description":"Modifiers add information about calling, implementing, or accessing a declaration. Their precise effect follows the language and the signature.","terms":[{"id":"opaque","definition":"An Erlang type declared with -opaque, whose representation callers must not depend on.","detail":"Selections and queries are opaque values. Use tmux_select:to_list/1 to obtain rows for lists functions, and tmux_query:fetch/1 to execute a query. Ordinary selection reads and query construction perform no tmux I/O.","references":[{"title":"Erlang opaque types","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/reference_manual/typespec.md#type-declarations-of-user-defined-types"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#opaque"},{"id":"abstract","definition":"An Erlang behaviour callback declared with -callback, whose implementation belongs to a callback module.","detail":"The declaration describes the callback contract; it does not provide a function body to call on the behaviour module.","references":[{"title":"Erlang behaviour callbacks","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/reference_manual/modules.md#behaviour-module-attribute"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#abstract"}]},{"id":"package-context","title":"Package context","description":"Package labels identify where an API is supplied.","terms":[{"id":"package","definition":"The OTP application supplying these Erlang modules, described by an application resource file.","detail":"The core application is libtmux_erlang. Its application name and the names of its modules serve different roles; use the documented source dependency to install it.","references":[{"title":"OTP applications","url":"https://github.com/erlang/otp/blob/OTP-29.1.2/system/doc/design_principles/applications.md"}],"url":"https://libtmux.org/en/erlang/latest/reference/glossary/#package"}]}]}