@atomist/rug
Advanced tools
Comparing version 0.7.1 to 0.8.0
@@ -26,3 +26,3 @@ | ||
*/ | ||
interface Dockerfile extends TreeNode { | ||
interface DockerFile extends TreeNode { | ||
@@ -76,3 +76,2 @@ //addContents: string | ||
content(): string | ||
@@ -83,21 +82,14 @@ | ||
filename(): string | ||
getExposedPorts(): any[] | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
path(): string | ||
permissions(): number | ||
@@ -111,3 +103,3 @@ | ||
} // interface Dockerfile | ||
} // interface DockerFile | ||
@@ -126,3 +118,2 @@ | ||
content(): string | ||
@@ -136,3 +127,2 @@ | ||
filename(): string | ||
@@ -143,18 +133,12 @@ | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
name(): string | ||
path(): string | ||
permissions(): number | ||
@@ -181,9 +165,7 @@ | ||
} // interface ElmModule | ||
} // interface ElmModule | ||
/* | ||
* | ||
Type for a file within a project. Supports generic options such as find and replace. | ||
* Type for a file within a project. Supports generic options such as find and replace | ||
*/ | ||
@@ -201,3 +183,2 @@ interface File extends TreeNode { | ||
content(): string | ||
@@ -208,3 +189,2 @@ | ||
filename(): string | ||
@@ -218,12 +198,8 @@ | ||
isJava(): boolean | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
@@ -234,3 +210,2 @@ | ||
name(): string | ||
@@ -241,6 +216,4 @@ | ||
path(): string | ||
permissions(): number | ||
@@ -274,61 +247,6 @@ | ||
} // interface File | ||
} // interface File | ||
/* | ||
* Java class | ||
*/ | ||
interface JavaClass extends TreeNode { | ||
//pkg: string | ||
//annotation: string | ||
addAnnotation(pkg: string, annotation: string): void | ||
//fqn: string | ||
addImport(fqn: string): void | ||
//msg: string | ||
fail(msg: string): void | ||
//annotation: string | ||
hasAnnotation(annotation: string): boolean | ||
//simpleName: string | ||
inheritsFrom(simpleName: string): boolean | ||
isAbstract(): boolean | ||
isInterface(): boolean | ||
lineCount(): number | ||
//newPackage: string | ||
movePackage(newPackage: string): void | ||
name(): string | ||
pkg(): string | ||
//msg: string | ||
println(msg: string): void | ||
//newName: string | ||
rename(newName: string): void | ||
//target: string | ||
//replacement: string | ||
renameByReplace(target: string, replacement: string): void | ||
//comment: string | ||
setHeaderComment(comment: string): void | ||
} // interface JavaClass | ||
/* | ||
* Java project | ||
@@ -349,6 +267,4 @@ */ | ||
backingArchiveProject(): Project | ||
context(): ProjectContext | ||
@@ -405,3 +321,2 @@ | ||
fileCount(): number | ||
@@ -416,3 +331,2 @@ | ||
files(): File[] | ||
@@ -423,12 +337,8 @@ | ||
isMaven(): boolean | ||
isSpring(): boolean | ||
isSpringBoot(): boolean | ||
javaFileCount(): number | ||
@@ -449,6 +359,4 @@ | ||
name(): string | ||
packages(): any[] | ||
@@ -459,3 +367,2 @@ | ||
projects(): Project[] | ||
@@ -479,3 +386,3 @@ | ||
} // interface JavaProject | ||
} // interface JavaProject | ||
@@ -488,3 +395,2 @@ | ||
content(): string | ||
@@ -495,12 +401,8 @@ | ||
filename(): string | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
@@ -511,9 +413,6 @@ | ||
path(): string | ||
permissions(): number | ||
pkg(): string | ||
@@ -524,3 +423,2 @@ | ||
typeCount(): number | ||
@@ -531,6 +429,56 @@ | ||
} // interface JavaSource | ||
} // interface JavaSource | ||
/* | ||
* Java class | ||
*/ | ||
interface JavaType extends TreeNode { | ||
//pkg: string | ||
//annotation: string | ||
addAnnotation(pkg: string, annotation: string): void | ||
//fqn: string | ||
addImport(fqn: string): void | ||
//msg: string | ||
fail(msg: string): void | ||
//annotation: string | ||
hasAnnotation(annotation: string): boolean | ||
//simpleName: string | ||
inheritsFrom(simpleName: string): boolean | ||
isAbstract(): boolean | ||
isInterface(): boolean | ||
lineCount(): number | ||
//newPackage: string | ||
movePackage(newPackage: string): void | ||
name(): string | ||
pkg(): string | ||
//msg: string | ||
println(msg: string): void | ||
//newName: string | ||
rename(newName: string): void | ||
//target: string | ||
//replacement: string | ||
renameByReplace(target: string, replacement: string): void | ||
//comment: string | ||
setHeaderComment(comment: string): void | ||
} // interface JavaType | ||
/* | ||
* package.json configuration file | ||
@@ -540,3 +488,2 @@ */ | ||
content(): string | ||
@@ -547,18 +494,12 @@ | ||
filename(): string | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
path(): string | ||
permissions(): number | ||
@@ -572,3 +513,3 @@ | ||
} // interface Json | ||
} // interface Json | ||
@@ -581,3 +522,2 @@ | ||
content(): string | ||
@@ -588,3 +528,2 @@ | ||
num(): number | ||
@@ -598,110 +537,49 @@ | ||
} // interface Line | ||
} // interface Line | ||
/* | ||
* Updateable terminal node | ||
* Generic container | ||
*/ | ||
interface Mutable extends TreeNode { | ||
interface MutableContainer extends TreeNode { | ||
//arg0: string | ||
update(arg0: string): void | ||
append(arg0: string): void | ||
value(): string | ||
} // interface Mutable | ||
/* | ||
* | ||
Type for a file within a project. Supports generic options such as find and replace. | ||
*/ | ||
interface File extends TreeNode { | ||
//literal: string | ||
append(literal: string): void | ||
//what: string | ||
contains(what: string): boolean | ||
//regexp: string | ||
containsMatch(regexp: string): boolean | ||
content(): string | ||
//msg: string | ||
fail(msg: string): void | ||
//msg: string | ||
println(msg: string): void | ||
filename(): string | ||
//key: string | ||
//value: string | ||
set(key: string, value: string): void | ||
//regexp: string | ||
findMatches(regexp: string): string[] | ||
//arg0: string | ||
update(arg0: string): void | ||
//regexp: string | ||
firstMatch(regexp: string): string | ||
//name: string | ||
valueOf(name: string): any | ||
} // interface MutableContainer | ||
isJava(): boolean | ||
/* | ||
* Updateable terminal node | ||
*/ | ||
interface MutableTerminal extends TreeNode { | ||
isWellFormed(): boolean | ||
//arg0: string | ||
update(arg0: string): void | ||
value(): string | ||
lineCount(): number | ||
} // interface MutableTerminal | ||
makeExecutable(): void | ||
//content: string | ||
mustContain(content: string): void | ||
name(): string | ||
//what: string | ||
nameContains(what: string): boolean | ||
path(): string | ||
permissions(): number | ||
//literal: string | ||
prepend(literal: string): void | ||
//msg: string | ||
println(msg: string): void | ||
//regexp: string | ||
//replaceWith: string | ||
regexpReplace(regexp: string, replaceWith: string): void | ||
//literal: string | ||
//replaceWith: string | ||
replace(literal: string, replaceWith: string): void | ||
//newContent: string | ||
setContent(newContent: string): void | ||
//name: string | ||
setName(name: string): void | ||
//newPath: string | ||
setPath(newPath: string): void | ||
//root: string | ||
underPath(root: string): boolean | ||
} // interface File | ||
/* | ||
* package.json configuration file | ||
*/ | ||
interface PackageJSON extends TreeNode { | ||
interface PackageJson extends TreeNode { | ||
@@ -717,3 +595,2 @@ //literal: string | ||
content(): string | ||
@@ -724,3 +601,2 @@ | ||
filename(): string | ||
@@ -734,12 +610,8 @@ | ||
isJava(): boolean | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
@@ -750,3 +622,2 @@ | ||
name(): string | ||
@@ -757,6 +628,4 @@ | ||
path(): string | ||
permissions(): number | ||
@@ -790,3 +659,3 @@ | ||
} // interface PackageJSON | ||
} // interface PackageJson | ||
@@ -812,68 +681,6 @@ | ||
} // interface Pair | ||
} // interface Pair | ||
/* | ||
* XML file | ||
*/ | ||
interface Xml extends TreeNode { | ||
//xpath: string | ||
//newNode: string | ||
//nodeContent: string | ||
addChildNode(xpath: string, newNode: string, nodeContent: string): void | ||
//parentNodeXPath: string | ||
//xPathOfNodeToReplace: string | ||
//newNode: string | ||
//nodeContent: string | ||
addOrReplaceNode(parentNodeXPath: string, xPathOfNodeToReplace: string, newNode: string, nodeContent: string): void | ||
//xpath: string | ||
contains(xpath: string): boolean | ||
content(): string | ||
//xpath: string | ||
deleteNode(xpath: string): void | ||
//msg: string | ||
fail(msg: string): void | ||
filename(): string | ||
//xpath: string | ||
getTextContentFor(xpath: string): string | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
path(): string | ||
permissions(): number | ||
//msg: string | ||
println(msg: string): void | ||
//xpath: string | ||
//newContent: string | ||
setTextContentFor(xpath: string, newContent: string): void | ||
//root: string | ||
underPath(root: string): boolean | ||
} // interface Xml | ||
/* | ||
* POM XML file | ||
@@ -927,3 +734,2 @@ */ | ||
artifactId(): string | ||
@@ -934,3 +740,2 @@ | ||
content(): string | ||
@@ -949,3 +754,2 @@ | ||
description(): string | ||
@@ -956,3 +760,2 @@ | ||
filename(): string | ||
@@ -963,3 +766,2 @@ | ||
groupId(): string | ||
@@ -979,30 +781,20 @@ | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
name(): string | ||
packaging(): string | ||
parentArtifactId(): string | ||
parentGroupId(): string | ||
parentVersion(): string | ||
path(): string | ||
permissions(): number | ||
@@ -1068,14 +860,9 @@ | ||
version(): string | ||
} // interface Pom | ||
} // interface Pom | ||
/* | ||
* | ||
Type for a project. Supports global operations. | ||
Consider using file and other lower types by preference as project | ||
operations can be inefficient. | ||
* Type for a project. Supports global operations. Consider using file and other lower types by preference as projectoperations can be inefficient. | ||
*/ | ||
@@ -1095,6 +882,4 @@ interface Project extends TreeNode { | ||
backingArchiveProject(): Project | ||
context(): ProjectContext | ||
@@ -1151,3 +936,2 @@ | ||
fileCount(): number | ||
@@ -1162,3 +946,2 @@ | ||
files(): File[] | ||
@@ -1182,3 +965,2 @@ | ||
name(): string | ||
@@ -1189,3 +971,2 @@ | ||
projects(): Project[] | ||
@@ -1205,3 +986,3 @@ | ||
} // interface Project | ||
} // interface Project | ||
@@ -1220,3 +1001,2 @@ | ||
content(): string | ||
@@ -1227,3 +1007,2 @@ | ||
filename(): string | ||
@@ -1234,18 +1013,12 @@ | ||
isWellFormed(): boolean | ||
keys(): any[] | ||
lineCount(): number | ||
makeExecutable(): void | ||
path(): string | ||
permissions(): number | ||
@@ -1263,3 +1036,3 @@ | ||
} // interface Properties | ||
} // interface Properties | ||
@@ -1270,3 +1043,3 @@ | ||
*/ | ||
interface Python extends TreeNode { | ||
interface PythonFile extends TreeNode { | ||
@@ -1292,9 +1065,9 @@ //arg0: string | ||
} // interface Python | ||
} // interface PythonFile | ||
/* | ||
* Python requirements file | ||
* Python requirements text file | ||
*/ | ||
interface PythonRequirements extends TreeNode { | ||
interface PythonRequirementsTxt extends TreeNode { | ||
@@ -1320,9 +1093,9 @@ //arg0: string | ||
} // interface PythonRequirements | ||
} // interface PythonRequirementsTxt | ||
/* | ||
* Python requirements text file | ||
* Python requirements file | ||
*/ | ||
interface PythonRequirementsTxt extends TreeNode { | ||
interface Requirements extends TreeNode { | ||
@@ -1348,6 +1121,124 @@ //arg0: string | ||
} // interface PythonRequirementsTxt | ||
} // interface Requirements | ||
/* | ||
* Rug archive | ||
*/ | ||
interface RugArchiveProject extends TreeNode { | ||
//name: string | ||
//parentPath: string | ||
addDirectory(name: string, parentPath: string): void | ||
//directoryPath: string | ||
addDirectoryAndIntermediates(directoryPath: string): void | ||
//path: string | ||
//content: string | ||
addFile(path: string, content: string): void | ||
backingArchiveProject(): Project | ||
context(): ProjectContext | ||
//sourcePath: string | ||
//destinationPath: string | ||
copyEditorBackingFileOrFail(sourcePath: string, destinationPath: string): void | ||
//sourcePath: string | ||
copyEditorBackingFileOrFail(sourcePath: string): void | ||
//sourcePath: string | ||
//destinationPath: string | ||
copyEditorBackingFilesOrFail(sourcePath: string, destinationPath: string): void | ||
//sourcePath: string | ||
copyEditorBackingFilesPreservingPath(sourcePath: string): void | ||
//sourcePath: string | ||
//destinationPath: string | ||
copyEditorBackingFilesWithNewRelativePath(sourcePath: string, destinationPath: string): void | ||
//sourcePath: string | ||
//destinationPath: string | ||
copyFile(sourcePath: string, destinationPath: string): void | ||
//sourcePath: string | ||
//destinationPath: string | ||
copyFileOrFail(sourcePath: string, destinationPath: string): void | ||
//path: string | ||
countFilesInDirectory(path: string): number | ||
//path: string | ||
deleteDirectory(path: string): void | ||
//path: string | ||
deleteFile(path: string): void | ||
//path: string | ||
directoryExists(path: string): boolean | ||
//editorName: string | ||
//params: any | ||
editWith(editorName: string, params: any): void | ||
//msg: string | ||
fail(msg: string): void | ||
//path: string | ||
//content: string | ||
fileContains(path: string, content: string): boolean | ||
fileCount(): number | ||
//path: string | ||
fileExists(path: string): boolean | ||
//path: string | ||
//content: string | ||
fileHasContent(path: string, content: string): boolean | ||
files(): File[] | ||
//path: string | ||
findFile(path: string): File | ||
//template: string | ||
//path: string | ||
//parameters: any | ||
merge(template: string, path: string, parameters: any): void | ||
//templatesPath: string | ||
//outputPath: string | ||
//ic: any | ||
mergeTemplates(templatesPath: string, outputPath: string, ic: any): void | ||
//path: string | ||
moveUnder(path: string): void | ||
name(): string | ||
//msg: string | ||
println(msg: string): void | ||
projects(): Project[] | ||
//regexp: string | ||
//replacement: string | ||
regexpReplace(regexp: string, replacement: string): void | ||
//literal: string | ||
//replaceWith: string | ||
replace(literal: string, replaceWith: string): void | ||
//literal: string | ||
//replacement: string | ||
replaceInPath(literal: string, replacement: string): void | ||
} // interface RugArchiveProject | ||
/* | ||
* Service | ||
@@ -1357,9 +1248,7 @@ */ | ||
} // interface Service | ||
} // interface Service | ||
/* | ||
* | ||
Type for services. Used in executors. | ||
* Type for services. Used in executors | ||
*/ | ||
@@ -1374,6 +1263,5 @@ interface Services extends TreeNode { | ||
services(): any[] | ||
} // interface Services | ||
} // interface Services | ||
@@ -1401,15 +1289,10 @@ | ||
applicationClassFQN(): string | ||
applicationClassPackage(): string | ||
applicationClassSimpleName(): string | ||
backingArchiveProject(): Project | ||
context(): ProjectContext | ||
@@ -1466,3 +1349,2 @@ | ||
fileCount(): number | ||
@@ -1477,3 +1359,2 @@ | ||
files(): File[] | ||
@@ -1484,12 +1365,8 @@ | ||
isMaven(): boolean | ||
isSpring(): boolean | ||
isSpringBoot(): boolean | ||
javaFileCount(): number | ||
@@ -1510,6 +1387,4 @@ | ||
name(): string | ||
packages(): any[] | ||
@@ -1520,3 +1395,2 @@ | ||
projects(): Project[] | ||
@@ -1540,32 +1414,80 @@ | ||
} // interface SpringBootProject | ||
} // interface SpringBootProject | ||
/* | ||
* YML file | ||
* XML file | ||
*/ | ||
interface Yml extends TreeNode { | ||
interface Xml extends TreeNode { | ||
//xpath: string | ||
//newNode: string | ||
//nodeContent: string | ||
addChildNode(xpath: string, newNode: string, nodeContent: string): void | ||
//parentNodeXPath: string | ||
//xPathOfNodeToReplace: string | ||
//newNode: string | ||
//nodeContent: string | ||
addOrReplaceNode(parentNodeXPath: string, xPathOfNodeToReplace: string, newNode: string, nodeContent: string): void | ||
//xpath: string | ||
contains(xpath: string): boolean | ||
content(): string | ||
//xpath: string | ||
deleteNode(xpath: string): void | ||
//msg: string | ||
fail(msg: string): void | ||
filename(): string | ||
//xpath: string | ||
getTextContentFor(xpath: string): string | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
path(): string | ||
permissions(): number | ||
//msg: string | ||
println(msg: string): void | ||
//xpath: string | ||
//newContent: string | ||
setTextContentFor(xpath: string, newContent: string): void | ||
//root: string | ||
underPath(root: string): boolean | ||
} // interface Xml | ||
/* | ||
* YML file | ||
*/ | ||
interface Yml extends TreeNode { | ||
content(): string | ||
//msg: string | ||
fail(msg: string): void | ||
filename(): string | ||
isWellFormed(): boolean | ||
lineCount(): number | ||
makeExecutable(): void | ||
path(): string | ||
permissions(): number | ||
@@ -1586,15 +1508,16 @@ | ||
} // interface Yml | ||
} // interface Yml | ||
export { Dockerfile } | ||
export { DockerFile } | ||
export { ElmModule } | ||
export { File } | ||
export { JavaClass } | ||
export { JavaProject } | ||
export { JavaSource } | ||
export { JavaType } | ||
export { Json } | ||
export { Line } | ||
export { Mutable } | ||
export { PackageJSON } | ||
export { MutableContainer } | ||
export { MutableTerminal } | ||
export { PackageJson } | ||
export { Pair } | ||
@@ -1604,5 +1527,6 @@ export { Pom } | ||
export { Properties } | ||
export { Python } | ||
export { PythonRequirements } | ||
export { PythonFile } | ||
export { PythonRequirementsTxt } | ||
export { Requirements } | ||
export { RugArchiveProject } | ||
export { Service } | ||
@@ -1609,0 +1533,0 @@ export { Services } |
@@ -5,8 +5,12 @@ import {Project} from "../model/Core" | ||
export interface ProjectContext{ | ||
export interface ProjectContext { | ||
pathExpressionEngine(): PathExpressionEngine | ||
} | ||
export interface ProjectEditor extends RugOperation{ | ||
/** | ||
* Edit the given project with given parameters | ||
*/ | ||
export interface ProjectEditor extends RugOperation { | ||
edit(project: Project, params: Object): Result | ||
} |
@@ -8,3 +8,4 @@ import {Project} from "../model/Core" | ||
*/ | ||
interface ProjectGenerator extends RugOperation{ | ||
interface ProjectGenerator extends RugOperation { | ||
populate(emptyProject: Project, projectName: string, args: Object) | ||
@@ -11,0 +12,0 @@ } |
@@ -0,1 +1,5 @@ | ||
/** | ||
* Superinterface for all Rug operations, enabling cataloging. | ||
*/ | ||
interface RugOperation { | ||
@@ -2,0 +6,0 @@ name: string |
{ | ||
"name": "@atomist/rug", | ||
"version": "0.7.1", | ||
"version": "0.8.0", | ||
"description": "TypeScript model for Atomist editors, generators etc", | ||
@@ -5,0 +5,0 @@ "repository": { |
@@ -18,1 +18,9 @@ "use strict"; | ||
exports.PathExpression = PathExpression; | ||
var Microgrammar = (function () { | ||
function Microgrammar(name, grammar) { | ||
this.name = name; | ||
this.grammar = grammar; | ||
} | ||
return Microgrammar; | ||
}()); | ||
exports.Microgrammar = Microgrammar; |
@@ -53,2 +53,7 @@ | ||
/** | ||
* Add a dynamic type. Can be used as a fluent API. | ||
*/ | ||
addType(dt: DynamicType): PathExpressionEngine | ||
evaluate<R extends TreeNode,N extends TreeNode>(root: R, expr: PathExpression<R,N>): Match<R,N> | ||
@@ -62,3 +67,2 @@ | ||
/** | ||
@@ -78,2 +82,14 @@ * Return a single match. Throw an exception otherwise. | ||
/** | ||
* Tag interface for dynamic types like microgrammars | ||
*/ | ||
interface DynamicType { | ||
} | ||
class Microgrammar implements DynamicType { | ||
constructor(public name: string, public grammar: string) {} | ||
} | ||
export {Match} | ||
@@ -83,1 +99,3 @@ export {PathExpression} | ||
export {TreeNode} | ||
export {DynamicType} | ||
export {Microgrammar} |
77028
21
1349