coc-als
Version:
Ada Language Server support for coc.nvim
342 lines (341 loc) • 11.1 kB
JSON
{
"Accept Statement": {
"prefix": "accept",
"scope": "ada",
"body": [
"accept ${1:Name} do",
" $0",
"end ${1:Name};"
],
"description": "Accept Statement"
},
"Access Type Definition": {
"prefix": "access",
"scope": "ada",
"body": [
"type ${1:Name} is ${2|access,access all,access constant|} of ${3:Some_Type};"
],
"description": "Access Type Definition"
},
"Array Type Definition": {
"prefix": "array",
"scope": "ada",
"body": [
"type ${1:Name} is array($2) of ${3:Element_Type};"
],
"description": "Array Type Definition"
},
"Aspect Specification": {
"prefix": "aspect",
"scope": "ada",
"body": [
"with ${1|Ada_2005,Ada_2012,Address,Alignment,All_Calls_Remote,Asynchronous,Atomic,Atomic_Components,Attach_Handler,Bit_Order,Component_Size,Constant_Indexing,Convention,CPU,Default_Component_Value,Default_Iterator,Default_Storage_Pool,Default_Value,Dispatching_Domain,Dynamic_Predicate,Elaborate_Body,Export,External_Name,External_Tag,Favor_Top_Level,Implicit_Dereference,Import,Independent,Independent_Components,Inline,Inline_Always,Input,Interrupt_Handler,Interrupt_Priority,Iterator_Element,Link_Name,Machine_Radix,No_Return,Object_Size,Output,Pack,Persistent_BSS,Post,Pre,Preelaborate,Priority,Pure,Pure_Function,Read,Relative_Deadline,Remote_Access_Type,Remote_Call_Interface,Remote_Types,Shared,Shared_Passive,Size,Small,Static_Predicate,Storage_Pool,Storage_Size,Stream_Size,Suppress_Debug_Info,Synchronization,Test_Case,Type_Invariant,Unchecked_Union,Universal_Aliasing,Unmodified,Unreferenced,Unreferenced_Objects,Value_Size,Variable_Indexing,Volatile,Volatile_Components,Warnings,Write|}"
],
"description": "Aspect Specification"
},
"Case Statement": {
"prefix": "case",
"scope": "ada",
"body": [
"case ${1:Variable} is",
" $0",
"end case;"
],
"description": "Case Statement"
},
"Extended Return Statement": {
"prefix": "return",
"body": [
"return ${1:Result} : $2 do",
" $0",
"end return;"
],
"description": "Extended Return Statement"
},
"Declare Statement": {
"prefix": "declare",
"body": [
"declare",
" $1",
"begin",
" $0",
"end;"
],
"description": "Declare Statement"
},
"Elsif Statement": {
"prefix": "elsif",
"scope": "ada",
"body": [
"elsif ${1:Condition} then",
" $0"
],
"description": "Elsif Statement"
},
"Entry Spec": {
"prefix": "entry-spec",
"scope": "ada",
"body": [
"entry ${1:Name};"
],
"description": "Entry Specification"
},
"Entry Body": {
"prefix": "entry-body",
"scope": "ada",
"body": [
"entry ${1:Name} when ${2:Guard_Condition} is",
" $3",
"begin",
" $0",
"end ${1:Name};"
],
"description": "Entry Body"
},
"Enumeration Type Definition": {
"prefix": "enumeration",
"scope": "ada",
"body": [
"type ${1:Name} is ($0);"
],
"description": "Enumeration Type Definition"
},
"Exit": {
"prefix": "exit",
"scope":"ada",
"body": [
"exit ${1:Loop Name};"
],
"description": "Exit statement"
},
"Exit When": {
"prefix": "exit-when",
"scope": "ada",
"body": [
"exit ${1:Loop Name} when ${2:Condition};"
],
"description": "Exit when statement"
},
"For Loop Statement": {
"prefix": "for",
"body": [
"for ${1:J} ${2|in,in reverse,of,of reverse|} loop",
" $0",
"end loop;"
],
"description": "For Loop Statement"
},
"Function Declaration": {
"prefix": "function",
"body": [
"${1|function,overriding function,not overriding function|} ${2:Name} ($3) return ${4:Return_Type}${5|;, is abstract;, is ();, renames |}"
],
"description": "Function Declaration"
},
"Function Body": {
"prefix": "function",
"body": [
"${1|function,overriding function,not overriding function|} ${2:Name} ($3) return ${4:Return_Type} is",
" $5",
"begin",
" $0",
"end ${2:Name};"
],
"description": "Function Body"
},
"Generic Formal Part": {
"prefix": "generic",
"scope": "ada",
"body": [
"generic",
" $1",
"$0"
],
"description": "Generic Formal Part"
},
"If Statement": {
"prefix": "if",
"scope": "ada",
"body": [
"if ${1:Condition} then",
" $0",
"end if;"
],
"description": "If Statement"
},
"Interface Type Definition": {
"prefix": "interface",
"scope": "ada",
"body": [
"type ${1:Name} is ${2|interface,limited interface,synchronized interface,task interface,protected interface|};"
],
"description": "Interface Type Definition"
},
"Loop Statement": {
"prefix": "loop",
"scope": "ada",
"body": [
"loop",
" $0",
"end loop;"
],
"description": "Loop Statement"
},
"Operator Declaration": {
"prefix": "operator",
"scope": "ada",
"body": [
"function \"${1|and,or,xor,=,<,<=,>,>=,+,-,&,*,/,mod,rem,**,not,abs|}\"($2) return ${3:Return_Type};"
],
"description": "Operator Declaration"
},
"Operator Body": {
"prefix": "operator",
"scope": "ada",
"body": [
"function \"${1|and,or,xor,=,<,<=,>,>=,+,-,&,*,/,mod,rem,**,not,abs|}\"($2) return ${3:Return_Type} is",
" $2",
"begin",
" $0",
"end ${1:Name};"
],
"description": "Operator Body"
},
"Package Declaration or Body": {
"prefix": "package",
"body": [
"${1|package,package body|} ${2:Name} is",
" ${3|pragma Preelaborate;,pragma Pure;|}$0",
"private",
"end ${2:Name};"
],
"description": "Package Declaration or Body"
},
"Pragma Directive": {
"prefix": "pragma",
"scope": "ada",
"body": [
"pragma ${1|Abort_Defer,Ada_83,Ada_95,Ada_2005,Ada_2012,All_Calls_Remote,Annotate,Assert,Assertion_Policy,Assume_No_Invalid_Values,Ast_Entry,Canonical_Streams,Check,Check_Name,Check_Policy,Comment,Common_Object,Compile_Time_Error,Compile_Time_Warning,Complete_Representation,Complex_Representation,Component_Alignment,Convention_Identifier,CPP_Class,CPP_Constructor,CPP_Virtual,CPP_VTable,CPU,C_Pass_By_Copy,Debug,Debug_Policy,Default_Storage_Pool,Detect_Blocking,Discard_Names,Dispatching_Domain,Elaborate,Elaborate_All,Elaborate_Body,Elaboration_Checks,Eliminate,Export_Exception,Export_Function,Export_Object,Export_PRocedure,Export_Value,Export_Valued_Procedure,Extend_System,Extensions_Allowed,External,External_Name_Casing,Fast_Math,Favor_Top_Level,Finalize_Storage_Only,Float_Representation,Ident,Implemented,Implicit_Packing,Import_Exception,Import_Function,Import_Object,Import_Procedure,Import_Valued_Procedure,Independent,Independent_Component,Initialize_Scalars,Inline_Always,Inline_Generic,Inspection_Point,Interface_Name,Interrupt_State,Invariant,Keep_Names,License,Linker_Alias,Linker_Constructor,Linker_Destructor,Linker_Options,Linker_Section,Link_With,List,Locking_Policy,Long_Float,Machine_Attribute,Main,Main_Storage,Normalize_Scalars,No_Body,No_StricT_Aliasing,Obsolescent,Optimize,Optimize_Alignment,Ordered,Page,Partition_Elaboration_Policy,Passive,Persistent_BSS,Polling,Postcondition,Precondition,Preelaborate,Priority_Specific_Dispatching,Profile,Profile_Warnings,Propagate_Exceptions,Psect_Object,Pure,Pure_Function,Queueing_Policy,Relative_Deadline,Remote_Call_Interface,Remote_Types,Restrictions,Restriction_Warnings,Reviewable,Shared_Passive,Share_Generic,Short_Circuit_And_Or,Short_Descriptors,Simple_Storage_Pool_Type,Source_File_Name,Source_File_Name_Project,Source_Reference,Static_Elaboration_Desired,Storage_Size,Stream_Convert,Style_Checks,Subtitle,Suppress,Suppress_All,Suppress_Exception_Locations,Suppress_Initialization,Task_Dispatching_Policy,Task_Info,Task_Name,Task_Storage,Test_Case,Thread_Body,Thread_Local_Storage,Time_Slice,Title,Unchecked_Union,Unimplemented_Unit,Universal_Aliasing,Universal_Data,Unmodified,Unreferenced,Unreferenced_Objects,Unreserve_All_Interrupts,Unsuppress,Use_VADS_Size,Validity_Checks,Volatile,Volatile_Components,Warnings,Weak_External,Wide_Character_Encoding|}$0;"
],
"description": "Pragma Directive"
},
"Procedure Declaration": {
"prefix": "procedure",
"body": [
"${1|procedure,overriding procedure,not overriding procedure|} ${2:Name} (${3})${4|;, is abstract;, is null;, renames |}"
],
"description": "Procedure Declaration"
},
"Procedure Body": {
"prefix": "procedure",
"body": [
"${1|procedure,overriding procedure,not overriding procedure|} ${2:Name} ($3) is",
" $4",
"begin",
" $0",
"end ${2:Name};"
],
"description": "Procedure Body"
},
"Protected Type Declaration": {
"prefix": "protected",
"scope": "ada",
"body": [
"protected ${1:Name} is",
" $0",
"private",
" ",
"end ${1:Name};"
],
"description": "Protected Declaration"
},
"Protected Type Body": {
"prefix": "protected-body",
"scope": "ada",
"body": [
"protected body ${1:Name} is",
" $0",
"end ${1:Name};"
],
"description": "Protected Body"
},
"Record Type Definition": {
"prefix": "record",
"scope": "ada",
"body": [
"type ${1:Name} is ${2|record,tagged record,abstract tagged record,limited record,tagged limited record,abstract tagged limited record|}",
" $0",
"end record;"
],
"description": "Record Type Definition"
},
"Select Statement": {
"prefix": "select",
"scope": "ada",
"body": [
"select",
" $0",
"${1|or,else|}",
" ",
"end select;"
],
"description": "Select Statement"
},
"Select Statement - Asynchronous": {
"prefix": "select",
"scope": "ada",
"body": [
"select",
" $0",
"then abort",
" ",
"end select;"
],
"description": "Asynchronous Select Statement"
},
"Select Statement - Timed": {
"prefix": "select",
"scope": "ada",
"body": [
"select",
" $0",
"or",
" delay ${1:Delay_Amount};",
"end select;"
],
"description": "Timed Select Statement"
},
"Task Definition": {
"prefix": "task",
"scope": "ada",
"body": [
"${1|task,task type|} ${2:Name} is",
" $0",
"private",
" ",
"end ${2:Name};"
],
"description": "Task Definition"
},
"Task Body": {
"prefix": "task-body",
"scope": "ada",
"body": [
"task body ${1:Name} is",
" $2",
"begin",
" $0",
"end ${1:Name};"
],
"description": "Task body"
},
"While Loop Statement": {
"prefix": "while",
"body": [
"while ${1:Condition} loop",
" $0",
"end loop;"
],
"description": "While Loop Statement"
}
}