简介
这里主要是展示 GS 关键字、运算符等等的书写格式。
关键字
if
if (arr.is_empty())
arr.push_back(1);
if (arr.is_empty())
{
arr.push_back(1);
arr.push_back(2);
}
if else
if (arr.is_empty())
arr.push_back(1);
else
arr.clear();
if (arr.is_empty())
{
arr.push_back(1);
arr.push_back(2);
}
else
{
arr.clear();
arr.shrink();
}
if else if
if (arr.length() > 64)
{
arr.resize(64);
}
else if (arr.length() > 32)
{
arr.resize(32);
}
else if (arr.length() > 16)
{
arr.resize(16);
}
else
{
arr.clear();
arr.shrink();
}
switch case
switch (value)
{
case 1:
arr.push_back(1);
break;
case 2:
arr.push_back(2);
break;
case 3:
arr.push_back(3);
return;
case 4:
arr.push_back(4);
break;
default:
arr.push_back(value);
break;
}
for
for (int i = 1 upto 999)
arr.push_back(i * 10);
for (int i = 1; i < 999; i++)
{
arr.push_back(i * 10);
}
for (;;)
{
coroutine.sleep(0.01);
}
for (int value : arr)
{
total += value;
}
while
while (arr.length() > 0)
{
arr.clear();
arr.shrink();
}
while (arr.is_empty())
arr.push_back(1);
do while
do
{
arr.push_back(arr.length());
arr.push_back(arr.length() + 1);
} while (arr.length() < 32);
defer
queue q = queue.create();
defer q.close();
array arr = nil;
defer {
if (arr != nil)
arr.clear();
}
catch
catch(arr.clear());
catch
{
arr.clear();
arr.shrink();
}
try catch
try
{
error("test\n");
}
catch
{
printf("error happen\n");
}
try
{
error("test\n");
}
catch (err)
{
printf("error: %M\n", err)
}
try_lock
try_lock(share_value1)
{
//
}
try_lock(share_value1, share_value2)
{
//
}
try_lock(read: share_value1)
{
//
}
try_lock(read: share_value1, share_value2)
{
//
}
let
let int a, int b = [ 1, 2 ];
int a, b;
let a, b = [ 1, 2 ];
enum
enum ServerState
{
Unknown,
Online,
Offline
}
class
class Queue
{
array list = nil;
int size = 0;
void __new(Queue self, int size)
{
self.list = array.allocate(size);
self.size = size;
}
}
parallel class Queue
{
array list = nil;
int size = 0;
void __new(Queue self, int size)
{
self.list := make_parallel(array.allocate(size));
self.size := size;
}
}