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

godot.entrygenerator.checks.PropertyMutablilityCheck.kt Maven / Gradle / Ivy

There is a newer version: 0.10.0-4.3.0
Show newest version
package godot.entrygenerator.checks

import godot.entrygenerator.model.RegisterPropertyAnnotation
import godot.entrygenerator.model.SourceFile
import godot.entrygenerator.utils.Logger

class PropertyMutablilityCheck(logger: Logger, sourceFiles: List): BaseCheck(logger, sourceFiles) {
    override fun execute(): Boolean {
        var hasIssue = false
        sourceFiles
            .flatMap { it.registeredClasses }
            .flatMap { it.properties }
            .filter { registeredProperty -> registeredProperty.annotations.filterIsInstance().isNotEmpty() }
            .forEach { registeredProperty ->
                if (!registeredProperty.isMutable) {
                    hasIssue = true
                    logger.error(registeredProperty, "Registered property is not mutable")
                }
            }
        return hasIssue
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy