{
"top-level-interface": {
"description": "Top-level Interface",
"prefix": "interface-tl",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow;",
"",
"/**",
" * Describes the component in charge of ${1:doing}.",
" */",
"interface $TM_FILENAME_BASE",
"{",
"\t$0",
"}"
]
},
"top-level-class": {
"description": "Top-level Class",
"prefix": "class-tl",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow;",
"",
"final class $TM_FILENAME_BASE",
"{",
"\t$0",
"}"
]
},
"top-level-exception": {
"description": "Top-level Exception",
"prefix": "exception-tl",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow;",
"",
"use Exception;",
"",
"/**",
" * Exception thrown when ${1:description}.",
" */",
"final class $TM_FILENAME_BASE extends Exception",
"{",
"}"
]
},
"top-level-trait": {
"description": "Top-level Trait",
"prefix": "trait-tl",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow;",
"",
"trait $TM_FILENAME_BASE",
"{",
"\t$0",
"}"
]
},
"interface": {
"description": "Interface",
"prefix": "interface",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow\\\\${TM_DIRECTORY/.*src\\/(([^\\/]*)(\\/)?)|(\\/)([^\\/]*)/$2${3:+.}${5:+.}$5/g};",
"",
"/**",
" * Describes the component in charge of ${1:doing}.",
" */",
"interface $TM_FILENAME_BASE",
"{",
"\t$0",
"}"
]
},
"class": {
"description": "Class",
"prefix": "class",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow\\\\${TM_DIRECTORY/.*src\\/(([^\\/]*)(\\/)?)|(\\/)([^\\/]*)/$2${3:+.}${5:+.}$5/g};",
"",
"final class $TM_FILENAME_BASE",
"{",
"\t$0",
"}"
]
},
"exception": {
"description": "Exception",
"prefix": "exception",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow\\\\${TM_DIRECTORY/.*src\\/(([^\\/]*)(\\/)?)|(\\/)([^\\/]*)/$2${3:+.}${5:+.}$5/g};",
"",
"use Exception;",
"",
"/**",
" * Exception thrown when ${1:description}.",
" */",
"final class $TM_FILENAME_BASE extends Exception",
"{",
"}"
]
},
"trait": {
"description": "Trait",
"prefix": "trait",
"body": [
"<?php",
"",
"namespace Chevere\\Workflow\\\\${TM_DIRECTORY/.*src\\/(([^\\/]*)(\\/)?)|(\\/)([^\\/]*)/$2${3:+.}${5:+.}$5/g};",
"",
"trait $TM_FILENAME_BASE",
"{",
"\t$0",
"}"
]
},
"immutable-method": {
"description": "Immutable method",
"prefix": "immutable-method",
"body": [
"private ${2|int,string,bool,array,object,resource|} \\$${3:argument};",
"",
"public function with${1:Name}(${2|int,string,bool,array,object,resource|} \\$${3:argument}): ${4:self}",
"{",
"\t\\$new = clone \\$this;",
"\t\\$new->${3:argument} = \\$${3:argument};",
"",
"\treturn \\$new;",
"}"
]
},
}
|