Merhabalar android dünyasında yeniyim normal recyclerview yapabiliyorum fakat firebase'den bir türlü veriyi getiremedim

yapmak istediğim şey liderlik tablosu gibi bir şey skora göre sıralanacak


User

code tagı içinde düzgün gözükmediği için kod tagı içinde ve dışında atıyorum
class User {    var user_id:String?=null    var username:String?=null    var image:Int?=null    var score:String?=null    constructor(user_id: String, username: String, image: Int, score: String) {        this.user_id = user_id        this.username = username        this.image = image        this.score = score    }    constructor() {}}
class User {

var user_id:String?=null
var username:String?=null
var image:Int?=null
var score:String?=null

constructor(user_id: String, username: String, image: Int, score: String) {
this.user_id = user_id
this.username = username
this.image = image
this.score = score
}

constructor() {}
}



Adapter

class Adapter(    val leaders: MutableList<User>,    val context: Context) : RecyclerView.Adapter<Adapter.LeadersViewHolder>() {    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): LeadersViewHolder {        return LeadersViewHolder(LayoutInflater.from(context).inflate(R.layout.leader_row_layout, parent, false))    }    override fun getItemCount() = leaders.size    override fun onBindViewHolder(holder: LeadersViewHolder, position: Int) {        with(leaders[position]) {            holder.nickname.text = username            holder.point.text = score            holder.image.setImageResource(image!!)        }    }    class LeadersViewHolder(view: View) : RecyclerView.ViewHolder(view) {        val image= view.leadersRowIV        val nickname= view.leadersRowNickNameTV        val point= view.leadersRowPointTV    }}


class Adapter(val leaders: MutableList<User>,val context: Context) : RecyclerView.Adapter<Adapter.LeadersViewHolder>() {

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): LeadersViewHolder {
return LeadersViewHolder(LayoutInflater.from(context).inf late(R.layout.leader_row_layout, parent, false))
}

override fun getItemCount() = leaders.size

override fun onBindViewHolder(holder: LeadersViewHolder, position: Int) {
with(leaders[position]) {
holder.nickname.text = username
holder.point.text = score
holder.image.setImageResource(image!!)
}
}

class LeadersViewHolder(view: View) : RecyclerView.ViewHolder(view) {
val image= view.leadersRowIV
val nickname= view.leadersRowNickNameTV
val point= view.leadersRowPointTV
}
}

Activity

class Activity : AppCompatActivity() {    override fun onCreate(savedInstanceState: Bundle?) {        super.onCreate(savedInstanceState)        setContentView(R.layout.leaders_activity)        val mLayoutManager = LinearLayoutManager(this)        with(leadersRV) {            layoutManager = mLayoutManager            adapter = Adapter(generateLeadersData(), this@Activity)        }    }    private fun generateLeadersData(): MutableList<User> {        var referans = FirebaseDatabase.getInstance()    }  }


class Activity : AppCompatActivity() {


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.leaders_activity)

val mLayoutManager = LinearLayoutManager(this)
with(leadersRV) {
layoutManager = mLayoutManager
adapter = Adapter(generateLeadersData(), this@Activity)
}
}

private fun generateLeadersData(): MutableList<User> {

var referans = FirebaseDatabase.getInstance()
}

}