Fugue.AWS.IAM.Typed.Resource

Resources are described here: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html

Module Members

isValid

(Function)

ensure a resource Block is valid

Type Signature

 fun (Block) -> Validation
Argument: x
Type: Block
Returns:
Type: Validation

notResource

(Function)

Construct a Block which excludes a (possibly wildcard) list of Resources.

Type Signature

 fun (Wildcard<List<Resource>>) -> Block
Argument: resources
Type: Wildcard<List<Resource>>
Returns:
Type: Block

parse

(Function)

Given a Type and JSON resources, construct a Block.

Type Signature

 fun (Type) -> Parser<Block>
Argument: ty
Type: Type
Returns:
Type: Parser<Block>

resource

(Function)

Construct a Block from a (possibly wildcard) list of Resources.

Type Signature

 fun (Wildcard<List<Resource>>) -> Block
Argument: resources
Type: Wildcard<List<Resource>>
Returns:
Type: Block

toJSON

(Function)

Given a Block, construct a pair consisting of the JSON field and JSON value.

Type Signature

 fun (Block) -> (String, JSON)
Argument: x
Type: Block
Returns:
Type: ( String, JSON)

typeFromField

(Function)

Convert a JSON field to a Type.

Type Signature

 fun (String) -> Result<Type>
Argument: x
Type: String
Returns:
Type: Result<Type>

Block

(Type)

type Block:
  type: Type
  resources: Wildcard<List<Resource>>

IAM resource Block

Record {

Field: type
Type: Type
Field: resources
Type: Wildcard<List<Resource>>

}

Resource

(Type)

type Resource:
  String

IAM resource Ludwig.String

Type

(Type)

type Type:
  | Resource
  | NotResource

NotResource

(Constructor)

Resource

(Constructor)

IAM block Type