All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.jetbrains.datalore.vis.svg.slim.AttributeUtil.kt Maven / Gradle / Ivy

There is a newer version: 4.5.3-alpha1
Show newest version
/*
 * Copyright (c) 2019. JetBrains s.r.o.
 * Use of this source code is governed by the MIT license that can be found in the LICENSE file.
 */

package jetbrains.datalore.vis.svg.slim

internal object AttributeUtil {

    private fun doubleOrDefault(e: SlimBase, attrIndex: Int, d: Double): Double {
        val o = e.getAttribute(attrIndex)
        if (o == null) {
            return d
        } else if (o is Number) {
            return o.toDouble()
        }
        return o.toString().toDouble()
    }

    fun zeroIfNull(e: SlimBase, attrIndex: Int): Double {
        return doubleOrDefault(e, attrIndex, 0.0)
    }

    fun oneIfNull(e: SlimBase, attrIndex: Int): Double {
        return doubleOrDefault(e, attrIndex, 1.0)
    }

    fun stringOrNull(e: SlimBase, attrIndex: Int): String? {
        return e.getAttribute(attrIndex)?.toString()
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy