advanced
Implement a Python Metaclass for a Declarative DSL
Develop a Python class utilizing metaclasses to create a Domain Specific Language for defining state machines.
📝 Contenu du Prompt
Write a Python implementation that uses metaclasses to create a declarative DSL for defining finite state machines. The DSL should allow users to define states and transitions using a clean syntax, avoiding boilerplate code. Specifically, implement a `StateMachine` metaclass that intercepts class creation to build a transition graph. The implementation should validate that all transitions refer to valid states and automatically generate the necessary transition logic methods. Provide a usage example defining a 'TrafficLight' state machine with Red, Green, and Yellow states, and explain how the metaclass manipulates the class dictionary during creation.