Package-level declarations

Types

Link copied to clipboard
@Serializable
data class AddPrefix(val prefix: String, val expr: IExpression) : IExpression
Link copied to clipboard
@Serializable
sealed interface IExpression
Link copied to clipboard
@Serializable
data class Permission(val name: String, val description: String? = null, val includedIn: List<ScopedPermissionName>, val includes: List<ScopedPermissionName>)
Link copied to clipboard
class PermissionEvaluator(val schemaInstance: SchemaInstance)
Link copied to clipboard
data class PermissionInstanceReference(val permissionName: String, val resource: ResourceInstanceReference)
Link copied to clipboard
class PermissionParser(val schema: Schema)
Link copied to clipboard
data class PermissionParts
Link copied to clipboard
@Serializable
data class Resource(val name: String, val parameters: List<String>, val resources: Map<String, Resource>, val permissions: Map<String, Permission>)
Link copied to clipboard
data class ResourceInstanceReference(val name: String, val parameterValues: List<String>, val parent: ResourceInstanceReference?)
Link copied to clipboard
@Serializable
data class Schema(val resources: Map<String, Resource>)

An abstract description of the available permissions and the relation between them.

Link copied to clipboard

A Kotlin DSL for defining a Schema.

Link copied to clipboard
class SchemaInstance(val schema: Schema)

Instantiates the abstract schema with data from an actual system.

Link copied to clipboard
@Serializable
data class ScopedPermissionName(val resourceName: String, val permissionName: String)
Link copied to clipboard
@Serializable
data class SourceParameterValue(val name: String) : IExpression

Functions

Link copied to clipboard