Changeset 53
- Timestamp:
- 02/20/06 15:30:09 (7 years ago)
- Location:
- branches/pyyaml3000
- Files:
-
- 7 added
- 6 edited
-
lib/yaml/__init__.py (modified) (2 diffs)
-
lib/yaml/composer.py (added)
-
lib/yaml/error.py (modified) (1 diff)
-
lib/yaml/events.py (modified) (2 diffs)
-
lib/yaml/nodes.py (added)
-
lib/yaml/parser.py (modified) (1 diff)
-
lib/yaml/resolver.py (added)
-
tests/data/duplicate-anchor-1.error-message (added)
-
tests/data/duplicate-anchor-2.error-message (added)
-
tests/data/recursive-anchor.error-message (added)
-
tests/data/undefined-anchor.error-message (added)
-
tests/test_errors.py (modified) (3 diffs)
-
tests/test_structure.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/pyyaml3000/lib/yaml/__init__.py
r51 r53 1 1 2 from error import YAMLError 2 3 from reader import Reader 3 4 from scanner import Scanner 4 5 from parser import Parser 6 from composer import Composer 7 from resolver import Resolver 5 8 6 9 from tokens import * … … 18 21 return iter(parser) 19 22 23 def compose(data, Reader=Reader, Scanner=Scanner, Parser=Parser, 24 Composer=Composer): 25 reader = Reader(data) 26 scanner = Scanner(reader) 27 parser = Parser(scanner) 28 composer = Composer(parser) 29 return iter(composer) 30 31 def compose_document(*args, **kwds): 32 try: 33 return compose(*args, **kwds).next() 34 except StopIteration: 35 return None 36 37 def resolve(data, Reader=Reader, Scanner=Scanner, Parser=Parser, 38 Composer=Composer, Resolver=Resolver): 39 reader = Reader(data) 40 scanner = Scanner(reader) 41 parser = Parser(scanner) 42 composer = Composer(parser) 43 resolver = Resolver(composer) 44 return iter(resolver) 45 46 def resolve_document(*args, **kwds): 47 try: 48 return resolve(*args, **kwds).next() 49 except StopIteration: 50 return None 51 -
branches/pyyaml3000/lib/yaml/error.py
r52 r53 64 64 if self.context is not None: 65 65 lines.append(self.context) 66 if self.context_marker is not None \67 and (self.problem is None or self.problem_marker is None68 or self.context_marker.name != self.problem_marker.name69 or self.context_marker.line != self.problem_marker.line70 or self.context_marker.column != self.problem_marker.column):71 lines.append(str(self.context_marker))66 if self.context_marker is not None \ 67 and (self.problem is None or self.problem_marker is None 68 or self.context_marker.name != self.problem_marker.name 69 or self.context_marker.line != self.problem_marker.line 70 or self.context_marker.column != self.problem_marker.column): 71 lines.append(str(self.context_marker)) 72 72 if self.problem is not None: 73 73 lines.append(self.problem) 74 if self.problem_marker is not None:75 lines.append(str(self.problem_marker))74 if self.problem_marker is not None: 75 lines.append(str(self.problem_marker)) 76 76 return '\n'.join(lines) 77 77 -
branches/pyyaml3000/lib/yaml/events.py
r51 r53 13 13 14 14 class NodeEvent(Event): 15 def __init__(self, anchor, tag,start_marker, end_marker):15 def __init__(self, anchor, start_marker, end_marker): 16 16 self.anchor = anchor 17 self.tag = tag18 17 self.start_marker = start_marker 19 18 self.end_marker = end_marker 20 19 21 20 class AliasEvent(NodeEvent): 22 def __init__(self, name, start_marker, end_marker): 23 self.name = name 24 self.start_marker = start_marker 25 self.end_marker = end_marker 21 pass 26 22 27 23 class ScalarEvent(NodeEvent): … … 34 30 35 31 class CollectionEvent(NodeEvent): 36 pass 32 def __init__(self, anchor, tag, start_marker, end_marker): 33 self.anchor = anchor 34 self.tag = tag 35 self.start_marker = start_marker 36 self.end_marker = end_marker 37 37 38 38 class SequenceEvent(CollectionEvent): -
branches/pyyaml3000/lib/yaml/parser.py
r52 r53 99 99 return True 100 100 return False 101 102 def peek(self): 103 # Get the next event. 104 if self.current_event is None: 105 try: 106 self.current_event = self.event_generator.next() 107 except StopIteration: 108 pass 109 return self.current_event 101 110 102 111 def get(self): -
branches/pyyaml3000/tests/test_errors.py
r52 r53 6 6 from yaml.scanner import * 7 7 from yaml.parser import * 8 from yaml.composer import * 9 from yaml.resolver import * 8 10 9 11 class TestErrors(test_appliance.TestAppliance): … … 22 24 scanner = Scanner(reader) 23 25 parser = Parser(scanner) 24 return list(parser) 26 composer = Composer(parser) 27 resolver = Resolver(composer) 28 return list(composer) 25 29 except YAMLError, exc: 26 30 #except ScannerError, exc: 27 31 #except ParserError, exc: 32 #except ComposerError, exc: 28 33 #print '.'*70 29 34 #print "%s:" % exc.__class__.__name__, exc … … 35 40 scanner = Scanner(reader) 36 41 parser = Parser(scanner) 37 return list(parser) 42 composer = Composer(parser) 43 resolver = Resolver(composer) 44 return list(composer) 38 45 except YAMLError, exc: 39 46 #except ScannerError, exc: 40 47 #except ParserError, exc: 48 #except ComposerError, exc: 41 49 #print '.'*70 42 50 #print "%s:" % filename -
branches/pyyaml3000/tests/test_structure.py
r51 r53 124 124 self.failUnlessEqual(event1.__class__, event2.__class__) 125 125 if isinstance(event1, AliasEvent): 126 self.failUnlessEqual(event1. name, event2.name)126 self.failUnlessEqual(event1.anchor, event2.anchor) 127 127 elif isinstance(event1, ScalarEvent): 128 128 self.failUnlessEqual(event1.anchor, event2.anchor)
Note: See TracChangeset
for help on using the changeset viewer.
