# Russian translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Artyom Kunyov , 2012. # Azamat Hackimov , 2012, 2017. # Dmitry Bolkhovskikh , 2017. # Katrin Kutepova , 2018. # Konstantin Shvaykovskiy , 2012. # Yuri Kozlov , 2011-2019. # Иван Павлов , 2017, 2019. msgid "" msgstr "" "Project-Id-Version: manpages-l10n\n" "POT-Creation-Date: 2024-06-01 06:00+0200\n" "PO-Revision-Date: 2019-09-21 08:19+0300\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" "Language: ru\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n" "%100>=11 && n%100<=14)? 2 : 3);\n" "X-Generator: Lokalize 2.0\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "LISTEN" msgid "LIST" msgstr "LISTEN" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2 мая 2024 г." #. type: TH #: archlinux debian-unstable #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.7" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "ИМЯ" #. LIST_FOREACH_FROM, #. LIST_FOREACH_SAFE, #. LIST_FOREACH_FROM_SAFE, #. LIST_PREV, #. LIST_SWAP #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "LIST_EMPTY, LIST_ENTRY, LIST_FIRST, LIST_FOREACH, LIST_HEAD, " "LIST_HEAD_INITIALIZER, LIST_INIT, LIST_INSERT_AFTER, LIST_INSERT_BEFORE, " "LIST_INSERT_HEAD, LIST_NEXT, LIST_REMOVE - implementation of a doubly linked " "list" msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Standard C library (I, I<-lc>)" msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SYNOPSIS" msgstr "СИНТАКСИС" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B<#include Esys/queue.hE>\n" msgstr "B<#include Esys/queue.hE>\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "B\n" "BIB<);>\n" "BIB<);>\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<);>\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<,>\n" "B< struct TYPE *>IB<, LIST_ENTRY >IB<);>\n" "BIB<,>\n" "B< struct TYPE *>IB<, LIST_ENTRY >IB<);>\n" "BIB<,>\n" "B< struct TYPE *>IB<, LIST_ENTRY >IB<);>\n" msgstr "" #. .BI "struct TYPE *LIST_PREV(struct TYPE *" elm ", LIST_HEAD *" head , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "BIB<);>\n" "BIB<, LIST_ENTRY >IB<);>\n" msgstr "" #. #-#-#-#-# archlinux: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .P #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# debian-bookworm: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .PP #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# debian-unstable: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .P #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# fedora-40: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .P #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# fedora-rawhide: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .P #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# mageia-cauldron: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .P #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# opensuse-leap-15-6: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .PP #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #. #-#-#-#-# opensuse-tumbleweed: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .BI "LIST_FOREACH_FROM(struct TYPE *" var ", LIST_HEAD *" head ", LIST_ENTRY " NAME ); #. .P #. .BI "LIST_FOREACH_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. .BI "LIST_FOREACH_FROM_SAFE(struct TYPE *" var ", LIST_HEAD *" head , #. .BI " LIST_ENTRY " NAME ", struct TYPE *" temp_var ); #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<, LIST_HEAD *>IB<, LIST_ENTRY >IB<);>\n" msgstr "" #. #-#-#-#-# archlinux: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# debian-bookworm: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .PP #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# debian-unstable: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# fedora-40: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# fedora-rawhide: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# mageia-cauldron: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# opensuse-leap-15-6: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .PP #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #. #-#-#-#-# opensuse-tumbleweed: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BI "void LIST_SWAP(LIST_HEAD *" head1 ", LIST_HEAD *" head2 , #. .BI " struct TYPE, LIST_ENTRY " NAME ); #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BIB<, LIST_ENTRY >IB<);>\n" msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "DESCRIPTION" msgstr "ОПИСАНИЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "These macros define and operate on doubly linked lists." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In the macro definitions, I is the name of a user-defined structure, " "that must contain a field of type I, named I. The " "argument I is the name of a user-defined structure that must be " "declared using the macro B()." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "I" msgid "Creation" msgstr "I" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A list is headed by a structure defined by the B() macro. This " "structure contains a single pointer to the first element on the list. The " "elements are doubly linked so that an arbitrary element can be removed " "without traversing the list. New elements can be added to the list after an " "existing element, before an existing element, or at the head of the list. A " "I structure is declared as follows:" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIST_HEAD(HEADNAME, TYPE) head;\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "where I is the structure to be defined, and I " "is the type of the elements to be linked into the list. A pointer to the " "head of the list can later be declared as:" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "struct HEADNAME *headp;\n" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "(The names I and I are user selectable.)" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() declares a structure that connects the elements in the list." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() evaluates to an initializer for the list I." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B() initializes the list referenced by I." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() evaluates to true if there are no elements in the list." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Insertion" msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, fuzzy #| msgid "Insertion of a new entry at the head of the list." msgid "" "B() inserts the new element I at the head of the " "list." msgstr "Вставка нового элемента в начало списка." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() inserts the new element I before the element " "I." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() inserts the new element I after the element " "I." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Traversal" msgstr "" #. #-#-#-#-# archlinux: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# debian-bookworm: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .PP #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# debian-unstable: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# fedora-40: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# fedora-rawhide: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# mageia-cauldron: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# opensuse-leap-15-6: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .PP #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #. #-#-#-#-# opensuse-tumbleweed: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_PREV () #. returns the previous element in the list, or NULL if this is the first. #. List #. .I head #. must contain element #. .IR elm . #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() returns the first element in the list, or NULL if the list " "is empty." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() returns the next element in the list, or NULL if this is the " "last." msgstr "" #. #-#-#-#-# archlinux: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .P #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .P #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# debian-bookworm: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .PP #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .PP #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .PP #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# debian-unstable: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .P #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .P #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# fedora-40: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .P #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .P #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# fedora-rawhide: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .P #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .P #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# mageia-cauldron: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .P #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .P #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# opensuse-leap-15-6: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .PP #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .PP #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .PP #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #. #-#-#-#-# opensuse-tumbleweed: list.3.pot (PACKAGE VERSION) #-#-#-#-# #. .P #. .BR LIST_FOREACH_FROM () #. behaves identically to #. .BR LIST_FOREACH () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. .P #. .BR LIST_FOREACH_SAFE () #. traverses the list referenced by #. .I head #. in the forward direction, assigning each element in turn to #. .IR var . #. However, unlike #. .BR LIST_FOREACH () #. here it is permitted to both remove #. .I var #. as well as free it from within the loop safely without interfering with the #. traversal. #. .P #. .BR LIST_FOREACH_FROM_SAFE () #. behaves identically to #. .BR LIST_FOREACH_SAFE () #. when #. .I var #. is NULL, else it treats #. .I var #. as a previously found LIST element and begins the loop at #. .I var #. instead of the first element in the LIST referenced by #. .IR head . #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() traverses the list referenced by I in the forward " "direction, assigning each element in turn to I." msgstr "" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Removal" msgstr "" #. .SS Other features #. .BR LIST_SWAP () #. swaps the contents of #. .I head1 #. and #. .IR head2 . #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B() removes the element I from the list." msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "RETURN VALUE" msgstr "ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() returns nonzero if the list is empty, and zero if the list " "contains at least one entry." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B(), and B() return a pointer to the first or next " "I structure, respectively." msgstr "" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() returns an initializer that can be assigned to " "the list I." msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "СТАНДАРТЫ" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "BSD." msgstr "BSD." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "ИСТОРИЯ" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "4.4BSD." msgstr "4.4BSD." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "ОШИБКИ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B() doesn't allow I to be removed or freed within the " "loop, as it would interfere with the traversal. B(), " "which is present on the BSDs but is not present in glibc, fixes this " "limitation by allowing I to safely be removed from the list and freed " "from within the loop without interfering with the traversal." msgstr "" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "EXAMPLES" msgstr "ПРИМЕРЫ" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/queue.hE\n" "\\&\n" "struct entry {\n" " int data;\n" " LIST_ENTRY(entry) entries; /* List */\n" "};\n" "\\&\n" "LIST_HEAD(listhead, entry);\n" "\\&\n" "int\n" "main(void)\n" "{\n" " struct entry *n1, *n2, *n3, *np;\n" " struct listhead head; /* List head */\n" " int i;\n" "\\&\n" " LIST_INIT(&head); /* Initialize the list */\n" "\\&\n" " n1 = malloc(sizeof(struct entry)); /* Insert at the head */\n" " LIST_INSERT_HEAD(&head, n1, entries);\n" "\\&\n" " n2 = malloc(sizeof(struct entry)); /* Insert after */\n" " LIST_INSERT_AFTER(n1, n2, entries);\n" "\\&\n" " n3 = malloc(sizeof(struct entry)); /* Insert before */\n" " LIST_INSERT_BEFORE(n2, n3, entries);\n" "\\&\n" " i = 0; /* Forward traversal */\n" " LIST_FOREACH(np, &head, entries)\n" " np-Edata = i++;\n" "\\&\n" " LIST_REMOVE(n2, entries); /* Deletion */\n" " free(n2);\n" " /* Forward traversal */\n" " LIST_FOREACH(np, &head, entries)\n" " printf(\"%i\\en\", np-Edata);\n" " /* List deletion */\n" " n1 = LIST_FIRST(&head);\n" " while (n1 != NULL) {\n" " n2 = LIST_NEXT(n1, entries);\n" " free(n1);\n" " n1 = n2;\n" " }\n" " LIST_INIT(&head);\n" "\\&\n" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" #. SRC END #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "SEE ALSO" msgstr "СМОТРИТЕ ТАКЖЕ" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B(3), B(7)" msgstr "B(3), B(7)" #. type: TH #: debian-bookworm #, no-wrap msgid "2022-10-30" msgstr "30 октября 2022 г." #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: Plain text #: debian-bookworm #, fuzzy #| msgid "" #| "POSIX.1-2001, POSIX.1-2008, 4.4BSD (B() first appeared in " #| "4.2BSD)." msgid "" "Not in POSIX.1, POSIX.1-2001, or POSIX.1-2008. Present on the BSDs (LIST " "macros first appeared in 4.4BSD)." msgstr "" "POSIX.1-2001, POSIX.1-2008, 4.4BSD (вызов B() впервые появился в " "4.2BSD)." #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/queue.hE\n" msgstr "" "#include Estddef.hE\n" "#include Estdio.hE\n" "#include Estdlib.hE\n" "#include Esys/queue.hE\n" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "struct entry {\n" " int data;\n" " LIST_ENTRY(entry) entries; /* List */\n" "};\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "LIST_HEAD(listhead, entry);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" "int\n" "main(void)\n" "{\n" " struct entry *n1, *n2, *n3, *np;\n" " struct listhead head; /* List head */\n" " int i;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid " LIST_INIT(&head); /* Initialize the list */\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " n1 = malloc(sizeof(struct entry)); /* Insert at the head */\n" " LIST_INSERT_HEAD(&head, n1, entries);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " n2 = malloc(sizeof(struct entry)); /* Insert after */\n" " LIST_INSERT_AFTER(n1, n2, entries);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " n3 = malloc(sizeof(struct entry)); /* Insert before */\n" " LIST_INSERT_BEFORE(n2, n3, entries);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " i = 0; /* Forward traversal */\n" " LIST_FOREACH(np, &head, entries)\n" " np-Edata = i++;\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " LIST_REMOVE(n2, entries); /* Deletion */\n" " free(n2);\n" " /* Forward traversal */\n" " LIST_FOREACH(np, &head, entries)\n" " printf(\"%i\\en\", np-Edata);\n" " /* List deletion */\n" " n1 = LIST_FIRST(&head);\n" " while (n1 != NULL) {\n" " n2 = LIST_NEXT(n1, entries);\n" " free(n1);\n" " n1 = n2;\n" " }\n" " LIST_INIT(&head);\n" msgstr "" #. type: Plain text #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "" " exit(EXIT_SUCCESS);\n" "}\n" msgstr "" " exit(EXIT_SUCCESS);\n" "}\n" #. type: TH #: fedora-40 fedora-rawhide mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31 октября 2023 г." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30 марта 2023 г." #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux man-pages 6.04" #. type: TH #: opensuse-tumbleweed #, fuzzy, no-wrap #| msgid "Linux man-pages 6.7" msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages 6.7"