Skip to content
Snippets Groups Projects
Select Git revision
  • 375582db6898f8184cc93e85354468db5a480065
  • develop default
  • release protected
  • v0.x
  • v2.2.0
  • v2.1.0
6 results

classicalb_snippets.json

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    classicalb_snippets.json 3.39 KiB
    {
    	".source.classicalb": {
    	  "MACHINE": {
    		"prefix": "MACHINE ...",
    		"body": "MACHINE ${1:MyMachine}\nCONSTANTS ${2:c}\nPROPERTIES ${3:c : 1..10 }\nVARIABLES ${4:x}\nINVARIANT ${5:x : 1..c}\nINITIALISATION ${6:x := 1}\nOPERATIONS \n  Inc = SELECT x < c THEN x := x + 1 END\nEND//MACHINE"
    	  },
    	  "package pragma": {
    		"prefix": "package",
    		"body": "/*@package ${1:foo.bar} */"
    	  },
    	  "import-package pragma": {
    		"prefix": "import-package",
    		"body": "/*@import-package ${1:foo.bazz} */"
    	  },
    	  "OPERATIONS Keyword": {
    		"prefix": "OPERATIONS",
    		"body": "OPERATIONS"
    	  },
    	  "DEFINITIONS Keyword": {
    		"prefix": "DEFINITIONS",
    		"body": "DEFINITIONS"
    	  },
    	  "VARIABLES": {
    		"prefix": "VARIABLES",
    		"body": "VARIABLES\n\t${1:x}\nINVARIANT\n\t${2:P}\nINITIALISATION\n\t${4:I}"
    	  },
    	  "CONSTANTS": {
    		"prefix": "CONSTANTS",
    		"body": "CONSTANTS\n\t${1:c}\nPROPERTIES\n\t${2:P}"
    	  },
    	  "ASSERTIONS": {
    		"prefix": "ASSERTIONS",
    		"body": "ASSERTIONS\n\t${1:a}"
    	  },
    	  "WHILE": {
    		"prefix": "while",
    		"body": "WHILE ${1:p}\nDO\n\t${2:G}\nINVARIANT ${3:Q}\nVARIANT ${4:E}\nEND"
    	  },
    	  "PRE Template": {
    		"prefix": "PRE",
    		"body": "PRE ${1:p}\nTHEN\n\t${2:G}\nEND"
    	  },
    	  "VAR": {
    		"prefix": "var",
    		"body": "VAR ${1:z}\nIN\n\t${2:G}\nEND"
    	  },
    	  "ANY": {
    		"prefix": "any",
    		"body": "ANY ${1:z}\nWHERE\n\t${2:P}\nTHEN\n\t${3:G}\nEND"
    	  },
    	  "LET": {
    		"prefix": "let",
    		"body": "LET ${1:x}\nBE ${2:E}\nIN\n\t${3:G}\nEND"
    	  },
    	  "IF": {
    		"prefix": "if",
    		"body": "IF ${1:p}\nTHEN\n\t${2:G}\nEND"
    	  },
    	  "IF ... ELSE": {
    		"prefix": "ifelse",
    		"body": "IF ${1:p}\nTHEN\n\t${2:G}\nELSE\n\t${2:H}\nEND"
    	  },
    	  "CHOICE": {
    		"prefix": "choice",
    		"body": "CHOICE\n\t${1:G}\nOR\n\t${2:H}\nEND"
    	  },
    	  "SELECT": {
    		"prefix": "select",
    		"body": "SELECT\n\t${1:p}\nTHEN\n\t${2:G}\nEND"
    	  },
    	  "SELECT ... ELSE": {
    		"prefix": "selectelse",
    		"body": "SELECT ${1:p}\nTHEN\n\t${2:G}\nWHEN ${3:q}\nTHEN\n\t${4:H}\nELSE\n\t${5:E}\nEND"
    	  },
    	  "CASE": {
    		"prefix": "choice",
    		"body": "CHOICE\n\t${1:G}\nOR\n\t${2:H}\nEND"
    	  },
    	  "TRUE":{
    		"prefix": "TRUE",
    		"body": "TRUE"
    	  }, 
    	  "FALSE":{
    		"prefix": "FALSE",
    		"body": "FALSE"
    	  }, 
    	  
    	  "Set Pref MININT": {
    		"prefix": "set minint",
    		"body": "SET_PREF_MININT == ${1:n};"
    	  },
    	  "Set Pref MAXINT": {
    		"prefix": "set minint",
    		"body": "SET_PREF_MININT == ${1:n};"
    	  },
    	  "B:INT": {
    		"prefix": "INT",
    		"body": "INT;"
    	  },
    	  "B:INTEGER": {
    		"prefix": "INTEGER",
    		"body": "INTEGER"
    	  },
    	  "B:NAT": {
    		"prefix": "NAT",
    		"body": "NAT"
    	  },
    	  "B:NATURAL": {
    		"prefix": "NATURAL",
    		"body": "NATURAL"
    	  },
    	  "B: -->": {
    		"prefix": "funcTotal",
    		"body": "-->"
    	  },
    	  "B: >->": {
    		"prefix": "funcTotalInjection",
    		"body": ">->"
    	  },
    	  "B: -->>": {
    		"prefix": "funcTotalSurjection",
    		"body": "-->>"
    	  },
    	  "B: >->>": {
    		"prefix": "funcTotalBijection",
    		"body": ">->>"
    	  },
    	  "B: +->": {
    		"prefix": "funcPartial",
    		"body": "+->"
    	  },
    	  "B: >+>": {
    		"prefix": "funcPartialInjection",
    		"body": ">+>"
    	  },
    	  "B: +->>": {
    		"prefix": "funcPartialSurjection",
    		"body": "+->>"
    	  },
    	  "B: >+>>": {
    		"prefix": "funcPartialBijection",
    		"body": ">+>>"
    	  },
    	  "B: <->": {
    		"prefix": "relation",
    		"body": "<->"
    	  },
    	  "B: <<->": {
    		"prefix": "relationTotal",
    		"body": "<<->"
    	  },
    	  "B: <->>": {
    		"prefix": "relationSurjective",
    		"body": "<->>"
    	  },
    	  "B: <<->>": {
    		"prefix": "relationTotalSurjective",
    		"body": "<<->>"
    	  }
    	}
      }