blob: 7d4448597f01bb1456f9dfda88376ba19ae8be7c [file] [log] [blame]
@namespace(uri="filesystem", prefix="filesystem")
package filesystem;
@gmf.diagram
class Filesystem {
val Drive[*] drives;
val Sync[*] syncs;
}
class Drive extends Folder {
}
class Folder extends File {
@gmf.compartment
val File[*] contents;
}
class Shortcut extends File {
@gmf.link(target.decoration="arrow", style="dash")
ref File target;
}
@gmf.link(label="lastSync", source="source",
target="target", style="dot", width="2")
class Sync {
ref File source;
ref File target;
attr String lastSync;
}
@gmf.node(label = "name")
class File {
attr String name;
}