# Package org.gradle.model

## Package org.gradle.model Description

Classes that operate upon the Gradle model.

- Interface Summary
  Interface | Description
  --- | ---
  ModelMap | Model backed map like structure allowing adding of items where instantiation is managed.
  ModelSet | A set of managed model objects.

- Class Summary
  Class | Description
  --- | ---
  RuleSource | A marker type for a class that is a collection of rules.

- Exception Summary
  Exception | Description
  --- | ---
  ConfigurationCycleException | Thrown when a cycle is encountered while configuring a model element.
  InvalidModelRuleDeclarationException | Thrown when a model rule, or source of model rules, is declared in an invalid way.
  InvalidModelRuleException | Thrown when there is a problem with the usage of a model rule.
  ModelRuleBindingException | Thrown when there is a problem binding the model element references of a model rule.
  ModelViewClosedException | Thrown when at attempt is made to mutate a subject of a rule after the rule has completed.
  WriteOnlyModelViewException | Thrown when an attempt is made to read the value of a model element that is not readable at the time.

- Annotation Type Summary
  Annotation Type | Description
  --- | ---
  Defaults | Denotes that the RuleSource method rule carrying this annotation initializes the rule subject with default values.
  Finalize | Denotes that the RuleSource method rule carrying this annotation finalizes the rule subject.
  Managed | A managed type is transparent to the model space, and enforces immutability at the appropriate times in the object's lifecycle.
  Model | Denotes that the RuleSource method rule carrying this annotation creates a new top level element in the model space.
  Mutate | Denotes that the RuleSource method rule carrying this annotation mutates the rule subject.
  Path | Specifies a model path on a parameter
  Unmanaged | Indicates that a property of a managed model element is explicitly of an unmanaged type.
  Validate | Denotes that the RuleSource method rule carrying this annotation validates the rule subject.