module lang::php::analysis::composer::Composer
rascal-0.42.0
org.rascalmpl.php-analysis-0.3.3
Usage
import lang::php::analysis::composer::Composer;
Dependencies
import lang::json::IO;
import util::Maybe;
import String;
import Node;
import IO;
import DateTime;
import Exception;
import lang::php::analysis::composer::VersionSyntax;
data Composer
data Composer
= composer(
Maybe[tuple[str vendorName, str projectName]] name,
Maybe[str] description,
ComposerVersion version,
str packageType,
list[str] keywords,
Maybe[str] homepage,
str readme,
Maybe[datetime] releaseDateTime,
list[str] license,
list[Author] authors,
map[str,str] support,
list[Funding] funding,
rel[str packageType, str vendorName, str projectName, PackageVersionConstraint constraint] packageDependencies,
rel[str packageType, str dependencyName, PackageVersionConstraint constraint] phpDependencies,
rel[str autoloadType, str namespace, str path] autoloadConfig,
rel[str autoloadType, str namespace, str path] autoloadDevConfig,
list[str] includePaths,
Maybe[str] targetDir,
Maybe[str] minimumStability,
Maybe[bool] preferStable)
| composerLoadError(str s)
| composerLoadError(value v, str s)
;
data ComposerVersion
data ComposerVersion
= version(int major, int minor, int patch)
| version(int major, int minor, int patch, VersionSuffix suffix)
| version(int major, int minor, int patch, VersionSuffix suffix, int suffixNum)
| noVersion()
;
data VersionSuffix
data VersionSuffix
= dev()
| patch()
| alpha()
| beta()
| rc()
;
data Author
data Author
= author(Maybe[str] name, Maybe[str] email, Maybe[str] homepage, Maybe[str] role)
;
data Funding
data Funding
= projectFunding(str typeOfFunding, str fundingURL)
;
data PackageType
data PackageType
= requires()
;
data Exception
data Exception
= ComposerLoadError(str s)
| ComposerLoadError(value v, str s)
;
function loadComposerFile
Composer loadComposerFile(loc l, bool justPublishedPackages = false)