[][src]Crate weedle

Weedle - A WebIDL Parser

Parses valid WebIDL definitions & produces a data structure starting from Definitions.

Example

extern crate weedle;

let parsed = weedle::parse("
    interface Window {
        readonly attribute Storage sessionStorage;
    };
").unwrap();
println!("{:?}", parsed);

Note: This parser follows the grammar given at WebIDL.

If any flaws found when parsing string with a valid grammar, create an issue.

Modules

argument
attribute
common
dictionary
interface
literal
mixin
namespace
term
types

Macros

term

Structs

CallbackDefinition

Parses [attributes]? callback identifier = type ( (arg1, arg2, ..., argN)? );

CallbackInterfaceDefinition

Parses [attributes]? callback interface identifier ( : inheritance )? { members };

CompleteStr

Holds a complete String, for which the at_eof method always returns true

DictionaryDefinition

Parses [attributes]? dictionary identifier ( : inheritance )? { members };

EnumDefinition

Parses [attributes]? enum identifier { values };

ImplementsDefinition

Parses [attributes]? identifier implements identifier;

IncludesStatementDefinition

Parses [attributes]? identifier includes identifier;

InterfaceDefinition

Parses [attributes]? interface identifier ( : inheritance )? { members };

InterfaceMixinDefinition

Parses [attributes]? interface mixin identifier { members };

NamespaceDefinition

Parses [attributes]? namespace identifier { members };

PartialDictionaryDefinition

Parses [attributes]? partial dictionary identifier { members };

PartialInterfaceDefinition

Parses [attributes]? partial interface identifier { members };

PartialInterfaceMixinDefinition

Parses [attributes]? partial interface mixin identifier { members };

PartialNamespaceDefinition

Parses [attributes]? partial namespace identifier { members };

TypedefDefinition

Parses [attributes]? typedef attributedtype identifier;

Enums

Context
Definition

Parses a definition

Err

The Err enum indicates the parser was not successful

Traits

Parse

Functions

parse

A convenient parse function

Type Definitions

Definitions

Parses WebIDL definitions. It is the root struct for a complete WebIDL definition.

EnumValueList

Parses a non-empty enum value list

IResult

Holds the result of parsing functions