Comments (4)
I wanted to mirror the simplicity of the $root = $dom->documentElement();
in Perl's XML::LibXML when I wrote that, and using the document pointer was some stopgap to avoid returning a "None" if there was no root.
However, I am now seeing the Perl API is in fact more honest and returns an undef when there is no element:
https://github.com/shlomif/perl-XML-LibXML/blob/master/LibXML.xs#L3720
So I agree with you that a refactor is needed here. I don't mind changing the return type at all, as long as we honestly reflect that in the release numbers, which we will.
from rust-libxml.
I take it you were suggesting an Option<Node>
return type instead.
from rust-libxml.
Yes, if there wasn't something that I hadn't thought about. Good
from rust-libxml.
Closing here, looking forward to the refactor branch 👍 Quite excited to "enlighten" the wrapper with your RefCell approach
from rust-libxml.
Related Issues (20)
- Implement correct deep copy of nodes/documents
- missing ability to get all attributes including namespace HOT 3
- STATUS_ACCESS_VIOLATION with Evaluate function while parsing xpath [Urgent] HOT 3
- Schema validation errors HOT 1
- Cargo test locking up HOT 3
- Not able to link statically HOT 1
- Encoding issue with libxml 2.11.1, 2.11.2, 2.11.3 (OK with libxml 2.11.0) HOT 1
- All `StructuredError` returned by `SchemaValidationContext::validate_*` are identical HOT 3
- Enable crate on 32-bit architectures HOT 12
- Removal of Error trait for XmlParseError HOT 3
- Move bindgen bindings into separate libxml-sys crate HOT 5
- Some struct bindings are missing XML Schema HOT 3
- windows cargo build fails on libxml HOT 10
- NodeReader trait
- Allow user-specified ParserOptions HOT 1
- Build failing on MacOS X HOT 4
- Link issue with Homebrew on Linux HOT 6
- Help Wanted | Vaidate XPath Syntax Independent of Context HOT 6
- Segmentation fault with xml serialisation HOT 4
- creating a text node after add_next_sibling and then also trying to add_next_sibling() it causes mutably shared node Err HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rust-libxml.