summaryrefslogtreecommitdiff
path: root/lib/yaml/__init__.py
blob: 10832ddebc5427a3fb2940d8384b0bd678cecc95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33

from error import YAMLError
from reader import Reader
from scanner import Scanner
from parser import Parser
from composer import Composer
from resolver import Resolver
from constructor import Constructor

from tokens import *
from events import *
from nodes import *

def parse(data, Reader=Reader, Scanner=Scanner, Parser=Parser):
    reader = Reader(data)
    scanner = Scanner(reader)
    parser = Parser(scanner)
    return parser

def load(data, Reader=Reader, Scanner=Scanner, Parser=Parser,
        Composer=Composer, Resolver=Resolver, Constructor=Constructor):
    reader = Reader(data)
    scanner = Scanner(reader)
    parser = Parser(scanner)
    composer = Composer(parser)
    resolver = Resolver(composer)
    constructor = Constructor(resolver)
    return constructor

def load_document(*args, **kwds):
    for document in load(*args, **kwds):
        return document