package oasis

  1. Overview
  2. Docs

License definition

This module allows to manipulate DEP-5 style license.

  • author Sylvain Le Gall
type license

Valid licenses

type license_exception

Valid license exceptions.

type license_version =
  1. | Version of OASISVersion.t
  2. | VersionOrLater of OASISVersion.t
  3. | NoVersion

License version.

type license_dep_5_unit = {
  1. license : license;
  2. excption : license_exception option;
  3. version : license_version;
}

DEP-5 license, basic.

type license_dep_5 =
  1. | DEP5Unit of license_dep_5_unit
  2. | DEP5Or of license_dep_5 list
  3. | DEP5And of license_dep_5 list

DEP-5 license, complex.

type t =
  1. | DEP5License of license_dep_5
  2. | OtherLicense of string

OASIS supported type of license.

type license_data = {
  1. long_name : string;
    (*

    Expanded name of the license.

    *)
  2. versions : OASISVersion.t list;
    (*

    Standard versions of the license.

    *)
  3. note : string option;
    (*

    Extra information about the license.

    *)
  4. deprecated : string option;
    (*

    Deprecated alternative.

    *)
}

Extra data about license Not exported

type license_exception_data = {
  1. explanation : string;
    (*

    Purpose of the exception.

    *)
  2. licenses : license list;
    (*

    Compatible licenses with the exception.

    *)
}

Extra data about license exception Not exported

val to_string : t -> string

Convert a DEP-5 license to string. Not exported.

Convert a DEP-5 license to a legal disclaimer for the product. Not exported.

val string_of_license : license -> string

Convert a license to string. Not exported.

val string_of_license_exception : license_exception -> string

Convert a license exception to string. Not exported.

val value : t OASISValues.t

License value. Not exported.

val choices : unit -> t list

Choices for quickstart question. Not exported.

val license_data : unit -> (license * license_data) list

All available license, their short name, their long name, and compatible versions. Not exported.

val license_exception_data : unit -> (license_exception * license_exception_data) list

All available license exception, their name, and compatible license. Not exported.

val odn_of_t : t -> ODN.t

Dump ODN.t. Not exported.

License definitions

No licenses are exported.

val proprietary : license
val apache : license
val artistic : license
val bsd2 : license
val bsd3 : license
val bsd4 : license
val cecill : license
val cecillb : license
val cecillc : license
val freebsd : license
val isc : license
val cc_by : license
val cc_by_sa : license
val cc_by_nd : license
val cc_by_nc : license
val cc_by_nc_sa : license
val cc_by_nc_nd : license
val cc0 : license
val cddl : license
val cpl : license
val eiffel : license
val expat : license
val gpl : license
val lgpl : license
val agpl : license
val gfdl : license
val gfdl_niv : license
val lppl : license
val mpl : license
val perl : license
val psf : license
val qpl : license
val w3c_software : license
val zlib : license
val zope : license
val mit : license
val wtfpl : license
val public_domain : license
val ocaml_linking_exception : license_exception