Does type_id::create() end up eventually call the class's new function?

To add to Chris’s response

  • You are missing constructor declaration within class ‘def’
  • Call to super.new(name) is missing in constructor of class ‘abc’