php-internal-docs
8.4.8
Unofficial docs for php/php-src
Loading...
Searching...
No Matches
cdata_section.c
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2018-2021 Alexander Borisov
3
*
4
* Author: Alexander Borisov <borisov@lexbor.com>
5
*/
6
7
#include "
lexbor/dom/interfaces/cdata_section.h
"
8
#include "
lexbor/dom/interfaces/document.h
"
9
10
11
lxb_dom_cdata_section_t
*
12
lxb_dom_cdata_section_interface_create
(
lxb_dom_document_t
*document)
13
{
14
lxb_dom_cdata_section_t
*element;
15
16
element =
lexbor_mraw_calloc
(document->
mraw
,
17
sizeof
(
lxb_dom_cdata_section_t
));
18
if
(element ==
NULL
) {
19
return
NULL
;
20
}
21
22
lxb_dom_node_t
*node =
lxb_dom_interface_node
(element);
23
24
node->
owner_document
=
lxb_dom_document_owner
(document);
25
node->
type
=
LXB_DOM_NODE_TYPE_CDATA_SECTION
;
26
27
return
element;
28
}
29
30
lxb_dom_cdata_section_t
*
31
lxb_dom_cdata_section_interface_clone
(
lxb_dom_document_t
*document,
32
const
lxb_dom_cdata_section_t
*
cdata
)
33
{
34
lxb_status_t
status
;
35
lxb_dom_cdata_section_t
*
new
;
36
37
new
=
lxb_dom_cdata_section_interface_create
(document);
38
if
(
new
==
NULL
) {
39
return
NULL
;
40
}
41
42
status
=
lxb_dom_text_interface_copy
(&new->text, &
cdata
->text);
43
if
(
status
!=
LXB_STATUS_OK
) {
44
return
lxb_dom_cdata_section_interface_destroy
(
new
);
45
}
46
47
return
new
;
48
}
49
50
lxb_dom_cdata_section_t
*
51
lxb_dom_cdata_section_interface_destroy
(
lxb_dom_cdata_section_t
*cdata_section)
52
{
53
(
void
)
lxb_dom_text_interface_destroy
(
lxb_dom_interface_text
(cdata_section));
54
return
NULL
;
55
}
lxb_dom_cdata_section_interface_destroy
lxb_dom_cdata_section_t * lxb_dom_cdata_section_interface_destroy(lxb_dom_cdata_section_t *cdata_section)
Definition
cdata_section.c:51
lxb_dom_cdata_section_interface_clone
lxb_dom_cdata_section_t * lxb_dom_cdata_section_interface_clone(lxb_dom_document_t *document, const lxb_dom_cdata_section_t *cdata)
Definition
cdata_section.c:31
lxb_dom_cdata_section_interface_create
lxb_dom_cdata_section_t * lxb_dom_cdata_section_interface_create(lxb_dom_document_t *document)
Definition
cdata_section.c:12
cdata_section.h
LXB_STATUS_OK
@ LXB_STATUS_OK
Definition
base.h:49
status
DNS_STATUS status
Definition
dns_win32.c:49
lxb_dom_document_t
struct lxb_dom_document lxb_dom_document_t
Definition
interface.h:41
lxb_dom_interface_node
#define lxb_dom_interface_node(obj)
Definition
interface.h:31
lxb_dom_cdata_section_t
struct lxb_dom_cdata_section lxb_dom_cdata_section_t
Definition
interface.h:47
lxb_dom_node_t
struct lxb_dom_node lxb_dom_node_t
Definition
interface.h:38
lxb_dom_interface_text
#define lxb_dom_interface_text(obj)
Definition
interface.h:34
document.h
lxb_dom_document_owner
lxb_inline lxb_dom_document_t * lxb_dom_document_owner(lxb_dom_document_t *document)
Definition
document.h:198
LXB_DOM_NODE_TYPE_CDATA_SECTION
@ LXB_DOM_NODE_TYPE_CDATA_SECTION
Definition
node.h:28
cdata
zend_ffi_cdata * cdata
Definition
ffi.c:3813
NULL
#define NULL
Definition
gdcache.h:45
lxb_dom_text_interface_copy
lxb_status_t lxb_dom_text_interface_copy(lxb_dom_text_t *dst, const lxb_dom_text_t *src)
Definition
text.c:59
lxb_dom_text_interface_destroy
lxb_dom_text_t * lxb_dom_text_interface_destroy(lxb_dom_text_t *text)
Definition
text.c:51
lexbor_mraw_calloc
void * lexbor_mraw_calloc(lexbor_mraw_t *mraw, size_t size)
Definition
mraw.c:227
lxb_dom_document::mraw
lexbor_mraw_t * mraw
Definition
document.h:53
lxb_dom_node::owner_document
lxb_dom_document_t * owner_document
Definition
node.h:50
lxb_dom_node::type
lxb_dom_node_type_t type
Definition
node.h:59
lxb_status_t
unsigned int lxb_status_t
Definition
types.h:28
void
ZEND_API void(ZEND_FASTCALL *zend_touch_vm_stack_data)(void *vm_stack_data)
ext
dom
lexbor
lexbor
dom
interfaces
cdata_section.c
Generated on Sat Aug 23 2025 01:46:06 for php-internal-docs by
1.13.2