/// /// MailSearchCriteria.kt /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE. /// https://github.com/mrousavy/nitro /// Copyright © Marc Rousavy @ Margelo /// package com.margelo.nitro.mailengine import androidx.annotation.Keep import com.facebook.proguard.annotations.DoNotStrip import java.util.Objects /** * Represents the JavaScript object/struct "MailSearchCriteria". */ @DoNotStrip @Keep data class MailSearchCriteria( @DoNotStrip @Keep val text: String?, @DoNotStrip @Keep val from: String?, @DoNotStrip @Keep val to: String?, @DoNotStrip @Keep val subject: String?, @DoNotStrip @Keep val body: String?, @DoNotStrip @Keep val seen: Boolean?, @DoNotStrip @Keep val flagged: Boolean?, @DoNotStrip @Keep val answered: Boolean?, @DoNotStrip @Keep val sinceDateMs: Double?, @DoNotStrip @Keep val beforeDateMs: Double?, @DoNotStrip @Keep val uidRangeStart: Double?, @DoNotStrip @Keep val uidRangeEnd: Double? ) { /* primary constructor */ override fun equals(other: Any?): Boolean { if (this === other) return true if (other !is MailSearchCriteria) return false return Objects.deepEquals(this.text, other.text) && Objects.deepEquals(this.from, other.from) && Objects.deepEquals(this.to, other.to) && Objects.deepEquals(this.subject, other.subject) && Objects.deepEquals(this.body, other.body) && Objects.deepEquals(this.seen, other.seen) && Objects.deepEquals(this.flagged, other.flagged) && Objects.deepEquals(this.answered, other.answered) && Objects.deepEquals(this.sinceDateMs, other.sinceDateMs) && Objects.deepEquals(this.beforeDateMs, other.beforeDateMs) && Objects.deepEquals(this.uidRangeStart, other.uidRangeStart) && Objects.deepEquals(this.uidRangeEnd, other.uidRangeEnd) } override fun hashCode(): Int { return arrayOf( text, from, to, subject, body, seen, flagged, answered, sinceDateMs, beforeDateMs, uidRangeStart, uidRangeEnd ).contentDeepHashCode() } companion object { /** * Constructor called from C++ */ @DoNotStrip @Keep @Suppress("unused") @JvmStatic private fun fromCpp(text: String?, from: String?, to: String?, subject: String?, body: String?, seen: Boolean?, flagged: Boolean?, answered: Boolean?, sinceDateMs: Double?, beforeDateMs: Double?, uidRangeStart: Double?, uidRangeEnd: Double?): MailSearchCriteria { return MailSearchCriteria(text, from, to, subject, body, seen, flagged, answered, sinceDateMs, beforeDateMs, uidRangeStart, uidRangeEnd) } } }