J'essaie de créer un format yaml qui me permet de créer un objet à l'intérieur d'un autre objet. Dans cet exemple, j'essaie de créer un objet Machine d'état et de le remplir en même temps avec des états et des connexions entre eux.Python, yaml objets imbriqués
yaml.load("""
!statemachine {
states: [
!state { name: p1 },
!state { name: p2 },
!state { name: p3 },],
connections:
[!connection { 'pim' : [p1,p2]}]}
""")
! StateMachine avoir un constructeur qui génère un objet de type MyStateMachine
! État avoir un constructeur qui génère un objet de type MyState
! Connexion avoir un constructeur qui doit utiliser l'objet généré avec le nom p1 et ajouter une connexion à ce
J'ai 2 problèmes ici:
1 - La construction ou pour état est appelé après l'StateMachine est créé et les états ne sont pas présents à l'intérieur
2 - Récupération du p1 d'objet et appeler la méthode add_connection dessus.
Merci à l'avance
C'est dur. Lorsque j'avais besoin de quelque chose comme ça (aller d'une chaîne qui est la valeur pour une clé spécifique dans un autre objet/mappage à une référence) j'ai ajouté une étape de désérialisation personnalisée au sommet des structures de données YAML natives. – delnan