override def deserialize()

in shared/src/main/scala/org/jetbrains/sbt/structure/dataSerializers.scala [548:559]


    override def deserialize(what: Node): Either[Throwable,StructureData] = {
      val sbtVersion = (what \ "@sbt").text
      val builds = (what \ "build").deserialize[BuildData]
      val projects = (what \ "project").deserialize[ProjectData]
      val repository = (what \ "repository").deserialize[RepositoryData].headOption
      val localCachePath = (what \ "localCachePath").headOption.map(_.text.file)

      if (sbtVersion.isEmpty)
        Left(new Error("<structure> property 'sbt' is empty"))
      else
        Right(StructureData(sbtVersion, builds, projects, repository, localCachePath))
    }