Safe Haskell | None |
---|---|
Language | Haskell2010 |
- type APIWithChangelog = (API, APIChangelog)
- data APIChangelog
- data APIChange
- = ChAddType TypeName NormTypeDecl
- | ChDeleteType TypeName
- | ChRenameType TypeName TypeName
- | ChAddField TypeName FieldName APIType (Maybe DefaultValue)
- | ChDeleteField TypeName FieldName
- | ChRenameField TypeName FieldName FieldName
- | ChChangeField TypeName FieldName APIType MigrationTag
- | ChAddUnionAlt TypeName FieldName APIType
- | ChDeleteUnionAlt TypeName FieldName
- | ChRenameUnionAlt TypeName FieldName FieldName
- | ChAddEnumVal TypeName FieldName
- | ChDeleteEnumVal TypeName FieldName
- | ChRenameEnumVal TypeName FieldName FieldName
- | ChCustomType TypeName MigrationTag
- | ChCustomAll MigrationTag
- type MigrationTag = String
- data VersionExtra
- showVersionExtra :: VersionExtra -> String
- data UpdateTypePos
- data UpdateDeclPos
- data APITableChange
Changelog representation
type APIWithChangelog = (API, APIChangelog) Source #
data APIChangelog Source #
An API changelog, consisting of a list of versions with the
changes from one version to the next. The versions must be in
descending order (according to the Ord
Version
instance).
ChangesUpTo VersionExtra [APIChange] APIChangelog | The changes from the previous version up to this version. |
ChangesStart Version | The initial version |
A single change within a changelog
type MigrationTag = String Source #
Within the changelog, custom migrations are represented as strings, so we have less type-safety.
data VersionExtra Source #
Represents either a released version (with a version number) or the version under development, which is newer than any release
data UpdateTypePos Source #
Represents the positions in a type to apply an update
data UpdateDeclPos Source #
Represents the positions in a declaration to apply an update
data APITableChange Source #
APIChange NormAPI APIChange (Map TypeName UpdateDeclPos) | An initial API, an APIChange and the positions in which to apply it |
ValidateData NormAPI | Request to validate the dataset against the given API |