Did you know ... Search Documentation:
Pack logtalk -- logtalk-3.101.0/docs/apis/_sources/http_cookies_1.rst.txt

.. index:: single: http_cookies(Representation) .. _http_cookies/1:

.. rst-class:: right

object

http_cookies(Representation)

  • Representation - Cookie header representation. Valid values are atom, chars, and codes. HTTP Cookie and Set-Cookie header parsing and generation predicates implementing RFC 6265 syntax.

    | Availability: | logtalk_load(http_cookies(loader))

    | Author: Paulo Moura | Version: 1:0:0 | Date: 2026-06-27

    | Compilation flags: | static, context_switching_calls

    | Uses: | :ref:`date <date/0>` | :ref:`list <list/0>`

    | Remarks:

    • Cookie header pairs: Cookie header values are represented as Name-Value pairs.
    • Set-Cookie components: Set-Cookie header values are represented by a cookie name, a cookie value, and an attribute list where attributes use Key-Value notation such as expires-date_time(Year, Month, Day, Hours, Minutes, Seconds), max_age-Seconds, domain-Domain, path-Path, secure-true, http_only-true, same_site-lax, partitioned-true, priority-high, and extension-Attribute.
    • Extension attributes: Unknown Set-Cookie attributes are preserved verbatim as extension-Attribute pairs as long as they do not use a reserved RFC 6265 attribute name.
    • Expires attribute: The Expires attribute value is normalized to a date_time(Year, Month, Day, Hours, Minutes, Seconds) term and generated back using the canonical HTTP-date representation.

    | Inherited public predicates: | (none)

    .. contents:: :local: :backlinks: top

Public predicates

.. index:: valid_cookie/1 .. _http_cookies/1::valid_cookie/1:

valid_cookie/1 ^^^^^^^^^^^^^^^^^^

True iff the argument is a valid HTTP Cookie header field value.

| Compilation flags: | static

| Template: | valid_cookie(Cookie) | Mode and number of proofs: | valid_cookie(++text) - zero_or_one


.. index:: parse_cookie/2 .. _http_cookies/1::parse_cookie/2:

parse_cookie/2 ^^^^^^^^^^^^^^^^^^

Parses a Cookie header field value into a list of Name-Value pairs.

| Compilation flags: | static

| Template: | parse_cookie(Cookie,Pairs) | Mode and number of proofs: | parse_cookie(++text,-list(compound)) - zero_or_one


.. index:: generate_cookie/2 .. _http_cookies/1::generate_cookie/2:

generate_cookie/2 ^^^^^^^^^^^^^^^^^^^^^

Generates a canonical Cookie header field value from a list of Name-Value pairs using ; as the separator.

| Compilation flags: | static

| Template: | generate_cookie(Pairs,Cookie) | Mode and number of proofs: | generate_cookie(++list(compound),-text) - zero_or_one


.. index:: valid_set_cookie/1 .. _http_cookies/1::valid_set_cookie/1:

valid_set_cookie/1 ^^^^^^^^^^^^^^^^^^^^^^

True iff the argument is a valid HTTP Set-Cookie header field value.

| Compilation flags: | static

| Template: | valid_set_cookie(SetCookie) | Mode and number of proofs: | valid_set_cookie(++text) - zero_or_one


.. index:: parse_set_cookie/4 .. _http_cookies/1::parse_set_cookie/4:

parse_set_cookie/4 ^^^^^^^^^^^^^^^^^^^^^^

Parses a Set-Cookie header field value into a cookie name, a cookie value, and a list of attributes.

| Compilation flags: | static

| Template: | parse_set_cookie(SetCookie,Name,Value,Attributes) | Mode and number of proofs: | parse_set_cookie(++text,-text,-text,-list(compound)) - zero_or_one


.. index:: generate_set_cookie/4 .. _http_cookies/1::generate_set_cookie/4:

generate_set_cookie/4 ^^^^^^^^^^^^^^^^^^^^^^^^^

Generates a canonical Set-Cookie header field value from a cookie name, a cookie value, and a list of attributes.

| Compilation flags: | static

| Template: | generate_set_cookie(Name,Value,Attributes,SetCookie) | Mode and number of proofs: | generate_set_cookie(++text,++text,++list(compound),-text) - zero_or_one


.. index:: normalize_cookie_attributes/2 .. _http_cookies/1::normalize_cookie_attributes/2:

normalize_cookie_attributes/2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Normalizes and validates a Set-Cookie attribute list using the canonical attribute term representation.

| Compilation flags: | static

| Template: | normalize_cookie_attributes(Attributes,NormalizedAttributes) | Mode and number of proofs: | normalize_cookie_attributes(++list(compound),-list(compound)) - zero_or_one


.. index:: cookie_attribute_present/2 .. _http_cookies/1::cookie_attribute_present/2:

cookie_attribute_present/2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

True iff a normalized Set-Cookie attribute list contains an attribute with the given name.

| Compilation flags: | static

| Template: | cookie_attribute_present(Attributes,Name) | Mode and number of proofs: | cookie_attribute_present(++list(compound),++atom) - zero_or_one


.. index:: cookie_attribute_value/3 .. _http_cookies/1::cookie_attribute_value/3:

cookie_attribute_value/3 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Returns the first value for the attribute with the given name in a normalized Set-Cookie attribute list.

| Compilation flags: | static

| Template: | cookie_attribute_value(Attributes,Name,Value) | Mode and number of proofs: | cookie_attribute_value(++list(compound),++atom,-term) - zero_or_one


.. index:: cookie_attribute_value/4 .. _http_cookies/1::cookie_attribute_value/4:

cookie_attribute_value/4 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Returns the first value for the attribute with the given name in a normalized Set-Cookie attribute list or the given default value when absent.

| Compilation flags: | static

| Template: | cookie_attribute_value(Attributes,Name,Default,Value) | Mode and number of proofs: | cookie_attribute_value(++list(compound),++atom,++term,-term) - zero_or_one


.. index:: cookie_expiry/2 .. _http_cookies/1::cookie_expiry/2:

cookie_expiry/2 ^^^^^^^^^^^^^^^^^^^

Returns the raw normalized expiry view for a Set-Cookie attribute list as session, max_age(Seconds), or expires(DateTime).

| Compilation flags: | static

| Template: | cookie_expiry(Attributes,Expiry) | Mode and number of proofs: | cookie_expiry(++list(compound),-compound) - zero_or_one


.. index:: cookie_expiry/3 .. _http_cookies/1::cookie_expiry/3:

cookie_expiry/3 ^^^^^^^^^^^^^^^^^^^

Resolves the normalized expiry view for a Set-Cookie attribute list against the given current Unix time as session, delete, or expires(UnixTime).

| Compilation flags: | static

| Template: | cookie_expiry(Attributes,CurrentUnixTime,Expiry) | Mode and number of proofs: | cookie_expiry(++list(compound),++integer,-compound) - zero_or_one


.. index:: cookie_deletion/3 .. _http_cookies/1::cookie_deletion/3:

cookie_deletion/3 ^^^^^^^^^^^^^^^^^^^^^

Returns a canonical Set-Cookie term that deletes the named cookie while echoing the relevant scoping and policy attributes from a template attribute list.

| Compilation flags: | static

| Template: | cookie_deletion(Name,Attributes,Deletion) | Mode and number of proofs: | cookie_deletion(++text,++list(compound),-compound) - zero_or_one


Protected predicates

(no local declarations; see entity ancestors if any)

Private predicates

(no local declarations; see entity ancestors if any)

Operators

(none)