XML (version 3.98-1.20)

free: Release the specified object and clean up its memory usage

Description

This generic function is available for explicitly releasing the memory associated with the given object. It is intended for use on external pointer objects which do not have an automatic finalizer function/routine that cleans up the memory that is used by the native object. This is the case, for example, for an XMLInternalDocument. We cannot free it with a finalizer in all cases as we may have a reference to a node in the associated document tree. So the user must explicitly release the XMLInternalDocument object to free the memory it occupies.

Usage

free(obj)

Arguments

obj

the object whose memory is to be released, typically an external pointer object or object that contains a slot that is an external pointer.

Value

An updated version of the object with the external address set to NIL. This is up to the individual methods.

Details

The methods will generally call a C routine to free the native memory.

See Also

xmlTreeParse with useInternalNodes = TRUE

Examples

Run this code
# NOT RUN {
 f = system.file("exampleData", "boxplot.svg", package = "XML")
 doc = xmlParse(f)
 nodes = getNodeSet(doc, "//path")
 rm(nodes)
 # free(doc)
# }

Run the code above in your browser using DataCamp Workspace