Library for generating source codes: base classes