CSC/ECE 517 Fall 2015/oss/M1503/IntegrateXMLParser: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 23: Line 23:


To achieve project goal we have done following initial steps.
To achieve project goal we have done following initial steps.
Complied servo and add xml5ever as a dependency to the script using cargo package manager. To do this we edited Cargo.toml located at components/script by adding xml5ever as a dependency.
Complied servo and add xml5ever as a dependency to the script using cargo package manager. To do this we edited Cargo.toml located at components/script by adding xml5ever as a dependency.


Added xml.rs at components/script/parse with parse_xml() as a function. mod.rs also need to be modified in order to declare file.
Added xml.rs at components/script/parse with parse_xml() as a function. mod.rs also need to be modified in order to declare file.
Added ServoXMLParser interface with necessary stubs in servoxmlparser.rs located at components/script/dom. Also servoxmlparser need to be declared in mod.rs located at components/script/dom
Added ServoXMLParser interface with necessary stubs in servoxmlparser.rs located at components/script/dom. Also servoxmlparser need to be declared in mod.rs located at components/script/dom
Called parse_xml(); from domparser.rs  located at components/script/dom this will help compile.
Called parse_xml(); from domparser.rs  located at components/script/dom this will help compile.

Revision as of 00:33, 1 November 2015

Integrate xml5ever XML parser

Introductiont

Rust

Rust is a general-purpose, compiled programming language developed by Mozilla Research. The syntax of Rust is somewhat similar to C and C++, with blocks of code delimited by curly brackets, and control flow and structure. Rust does not use automatic garbage collection mechanism similar to java. It accomplishes the goals of memory safe without using garbage collection and it supports concurrency and parallelism in building platforms.

Servo

Servo is web browser layout engine developed by Mozilla Research. It was developed in Rust. Servo handles parallel environments such as rendering, layout, image decoding as a separate tasks. Servo provides APIs, JavaScript support. Servo was not developed explicitly to create full web browser but to achieve maximum parallelism.

Project Description

Servo currently lacks a parser for XML documents, which prevents implementation of several APIs. The goal of the project is to integrate xml5ever parser into Servo.


Initial Implementation

To achieve project goal we have done following initial steps.

Complied servo and add xml5ever as a dependency to the script using cargo package manager. To do this we edited Cargo.toml located at components/script by adding xml5ever as a dependency.

Added xml.rs at components/script/parse with parse_xml() as a function. mod.rs also need to be modified in order to declare file.

Added ServoXMLParser interface with necessary stubs in servoxmlparser.rs located at components/script/dom. Also servoxmlparser need to be declared in mod.rs located at components/script/dom

Called parse_xml(); from domparser.rs located at components/script/dom this will help compile.