<s> from glad . parse import Spec <EOL> class EGLSpec ( Spec ) : <EOL> NAME = '<STR_LIT>' <EOL> class GLSpec ( Spec ) : <EOL> NAME = '<STR_LIT>' <EOL> def __init__ ( self , root ) : <EOL> Spec . __init__ ( self , root ) <EOL> self . _profile = '<STR_LIT>' <EOL> self . _remove = set ( ) <EOL> @ property <EOL> def profile ( self ) : <EOL> return self . _profile <EOL> @ profile . setter <EOL> def profile ( self , value ) : <EOL> if value not in ( '<STR_LIT>' , '<STR_LIT>' ) : <EOL> raise ValueError ( '<STR_LIT>' ) <EOL> self . _profile = value <EOL> @ property <EOL> def removed ( self ) : <EOL> if self . _profile == '<STR_LIT>' : <EOL> return frozenset ( self . _remove ) <EOL> return frozenset ( ) <EOL> class GLXSpec ( Spec ) : <EOL> NAME = '<STR_LIT>' <EOL> class WGLSpec ( Spec ) : <EOL> NAME = '<STR_LIT>' <EOL> SPECS = dict ( ) <EOL> import sys <EOL> import inspect <EOL> for name , cls in inspect . getmembers ( sys . modules [ __name__ ] , inspect . isclass ) : <EOL> if issubclass ( cls , Spec ) : <EOL> SPECS [ cls . NAME ] = cls </s>
