UnicodeSecurity.DomainLabel (UnicodeSecurity v0.1.0)

Copy Markdown View Source

Original source span, normalized forms, and security facts for one domain label.

Offsets and counts refer to the original UTF-8 input. A trailing root may contain source characters removed by UTS #46, so its input need not be empty. Each non-root label has its own policy findings. Invalid labels retain only forms known safe to report and leave unavailable security facts nil.

Summary

Types

t()

@type t() :: %UnicodeSecurity.DomainLabel{
  ascii: binary() | nil,
  byte_length: non_neg_integer() | nil,
  byte_offset: non_neg_integer() | nil,
  codepoint_count: non_neg_integer() | nil,
  codepoint_index: non_neg_integer() | nil,
  index: non_neg_integer() | nil,
  input: binary() | nil,
  mapped?: boolean() | nil,
  mixed_number?: boolean() | nil,
  mixed_script?: boolean() | nil,
  reasons: [UnicodeSecurity.Reason.t()],
  resolved_scripts: :all | [atom()] | nil,
  restriction_level: UnicodeSecurity.Result.restriction_level() | nil,
  root?: boolean() | nil,
  scripts: [atom()] | nil,
  skeleton: binary() | nil,
  unicode: binary() | nil,
  valid_idna?: boolean() | nil,
  verdict: UnicodeSecurity.Result.verdict() | nil
}