package ch.usi.inf.l3.sana.ooj.types

import ch.usi.inf.l3.sana
import sana.ooj.symbols.SymbolUtils

trait TypeUtils {
  def objectClassType: ClassTypeApi = {
    val qual            = SymbolUtils.packageName(SymbolUtils.objectClassSymbol)
    val name            = SymbolUtils.objectClassSymbol.name
    ClassType(qual, name, Set.empty)
  }
}


object TypeUtils extends TypeUtils

package ch.usi.inf.l3.sana.ooj.types

import ch.usi.inf.l3.sana
import sana.ooj.names.StdNames

trait TypeUtils {
  def objectClassType: ClassTypeApi = {
    val qual            = {
      val java = StdNames.JAVA_PACKAGE_NAME.asString
      val lang = StdNames.LANG_PACKAGE_NAME.asString
      s"$java.$lang"
    }
    val name            = StdNames.OBJECT_TYPE_NAME
    ClassType(qual, name, Set.empty)
  }
}


object TypeUtils extends TypeUtils

Remove mutual dependency btwn Object type & symbol
Remove mutual dependency btwn Object type & symbol
