Merge branch 'amqp' of vapour:ocamlmsg into amqp

This commit is contained in:
Tony Garnock-Jones 2012-03-07 13:24:43 -05:00
commit ebb6e57318
2 changed files with 29 additions and 15 deletions

View File

@ -37,7 +37,6 @@ copyright_stmt = '''(* Copyright 2012 Tony Garnock-Jones <tonygarnockjones@gmail
import sys import sys
import xml.dom.minidom import xml.dom.minidom
from collections import namedtuple
########################################################################### ###########################################################################
# XML utils # XML utils
@ -114,27 +113,39 @@ class DatalikeMixin:
def match_clause(self): def match_clause(self):
return ' | ' + self.pattern() + ' ->' return ' | ' + self.pattern() + ' ->'
class Class(DatalikeMixin, class Class(DatalikeMixin):
namedtuple('Class', 'index name fields methods'.split())): def __init__(self, index, name, fields, methods):
self.index = index
self.name = name
self.fields = fields
self.methods = methods
@property @property
def full_name(self): def full_name(self):
return self.name + '-properties' return self.name + '-properties'
class Method(DatalikeMixin, class Method(DatalikeMixin):
namedtuple('Method', ['class_name', def __init__(self, class_name, class_index, has_content, deprecated,
'class_index', index, name, synchronous, responses, fields):
'has_content', self.class_name = class_name
'deprecated', self.class_index = class_index
'index', self.has_content = has_content
'name', self.deprecated = deprecated
'synchronous', self.index = index
'responses', self.name = name
'fields'])): self.synchronous = synchronous
self.responses = responses
self.fields = fields
@property @property
def full_name(self): def full_name(self):
return self.class_name + '-' + self.name return self.class_name + '-' + self.name
Field = namedtuple('Field', 'name type reserved'.split()) class Field:
def __init__(self, name, type, reserved):
self.name = name
self.type = type
self.reserved = reserved
def load_fields(e): def load_fields(e):
return [Field(attr(f, 'name'), return [Field(attr(f, 'name'),

View File

@ -18,7 +18,10 @@
from __future__ import with_statement from __future__ import with_statement
import sys import sys
import json try:
import json
except:
import simplejson as json
def mlify(s): def mlify(s):
s = s.replace('-', '_') s = s.replace('-', '_')