view Resources/CodeGeneration/Graveyard/playground4.py @ 519:17106b29ed6d bgo-commands-codegen

Changed the metadata system for structs. A __handler entry is now required (with "cpp", "ts" or both: ["cpp","ts"]). Changed the enumerations to string-based values. Adapted the integrated wasm test.
author Benjamin Golinvaux <bgo@osimis.io>
date Tue, 12 Mar 2019 13:11:18 +0100
parents 6405435480ae
children
line wrap: on
line source

testYaml = """
enum SomeEnum:
 - january
 - feb

struct Message0:
 a: string

struct Message1:
 a: string
 b: int32
 c: vector<Message0>
 d: SomeEnum = january
 e: SomeEnum= january
 f: SomeEnum=january
 g: SomeEnum =january
  

# github.com/AlDanial/cloc
header2 : 
  cloc_version       : 1.67
  elapsed_seconds    : int32_t

header : 
  cloc_version       : 1.67
  elapsed_seconds    : int32_t
  cloc_url           : vector<map<string,int32>>
  n_files            : 1
  n_lines            : 3
  files_per_second   : 221.393718659277
  lines_per_second   : 664.181155977831
  report_file        : IDL.idl.yaml
IDL :
  nFiles: 1
  blank: 0
  comment: 2
  code: 1
EnumSUM: 
  - aaa
  - bbb

SUM: 
  blank: 0
  comment: 2
  code: 1
  nFiles: 1
"""

import yaml

b = yaml.load(testYaml)
print(b)

c = {
  'enum SomeEnum': ['january', 'feb'], 
  'struct Message0': {'a': 'string'}, 
  'struct Message1': {
    'a': 'string', 
    'b': 'int32', 
    'c': 'vector<Message0>', 
    'd': 'vector<map<string,int32>>', 
    'e': 'SomeEnum= january', 
    'f': 'SomeEnum=january', 
    'g': 'SomeEnum =january'
  }, 
}

print(c)