mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-06 07:38:48 +00:00
Reduce number of range and slice operators #239
Replace .. and ... with : and ..
This commit is contained in:
@@ -95,7 +95,7 @@ enumerations :: proc() {
|
||||
}
|
||||
|
||||
variadic_procedures :: proc() {
|
||||
print_ints :: proc(args: ...int) {
|
||||
print_ints :: proc(args: ..int) {
|
||||
for arg, i in args {
|
||||
if i > 0 do print(", ");
|
||||
print(arg);
|
||||
@@ -106,7 +106,7 @@ variadic_procedures :: proc() {
|
||||
print_ints(1); nl();
|
||||
print_ints(1, 2, 3); nl();
|
||||
|
||||
print_prefix_f32s :: proc(prefix: string, args: ...f32) {
|
||||
print_prefix_f32s :: proc(prefix: string, args: ..f32) {
|
||||
print(prefix);
|
||||
print(": ");
|
||||
for arg, i in args {
|
||||
@@ -323,7 +323,7 @@ match_statement :: proc() {
|
||||
|
||||
Vector3 :: struct {x, y, z: f32}
|
||||
|
||||
print_floats :: proc(args: ...f32) {
|
||||
print_floats :: proc(args: ..f32) {
|
||||
for arg, i in args {
|
||||
if i > 0 do print(", ");
|
||||
print(arg);
|
||||
|
||||
@@ -32,7 +32,7 @@ main :: proc() {
|
||||
|
||||
/*
|
||||
push_allocator x {
|
||||
...
|
||||
..
|
||||
}
|
||||
|
||||
is equivalent to:
|
||||
@@ -42,7 +42,7 @@ main :: proc() {
|
||||
__context.allocator = x
|
||||
defer __context.allocator = prev_allocator
|
||||
|
||||
...
|
||||
..
|
||||
}
|
||||
*/
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ when true {
|
||||
Removed:
|
||||
* Maybe/option types
|
||||
* Remove `type` keyword and other "reserved" keywords
|
||||
* ..< and ... removed and replace with .. (half-closed range)
|
||||
* ..< and .. removed and replace with .. (half-closed range)
|
||||
|
||||
Changed:
|
||||
* `#assert` and `assert` return the value of the condition for semantic reasons
|
||||
@@ -51,7 +51,7 @@ when true {
|
||||
}
|
||||
|
||||
{
|
||||
// Removal of ..< and ...
|
||||
// Removal of ..< and ..
|
||||
for i in 0..16 {
|
||||
}
|
||||
// Is similar to
|
||||
|
||||
@@ -69,10 +69,10 @@ general_stuff :: proc() {
|
||||
|
||||
{
|
||||
// .. half-closed range
|
||||
// ... open range
|
||||
// .. open range
|
||||
|
||||
for in 0..2 {} // 0, 1
|
||||
for in 0...2 {} // 0, 1, 2
|
||||
for in 0..2 {} // 0, 1, 2
|
||||
}
|
||||
}
|
||||
|
||||
@@ -287,17 +287,17 @@ union_type :: proc() {
|
||||
|
||||
/*
|
||||
Entity :: struct {
|
||||
...
|
||||
..
|
||||
derived: union{^Frog, ^Monster};
|
||||
}
|
||||
|
||||
Frog :: struct {
|
||||
using entity: Entity;
|
||||
...
|
||||
..
|
||||
}
|
||||
Monster :: struct {
|
||||
using entity: Entity;
|
||||
...
|
||||
..
|
||||
|
||||
}
|
||||
new_entity :: proc(T: type) -> ^Entity {
|
||||
@@ -522,7 +522,7 @@ threading_example :: proc() {
|
||||
}
|
||||
|
||||
worker_proc :: proc(t: ^thread.Thread) -> int {
|
||||
for iteration in 1...5 {
|
||||
for iteration in 1..5 {
|
||||
fmt.printf("Thread %d is on iteration %d\n", t.user_index, iteration);
|
||||
fmt.printf("`%s`: iteration %d\n", prefix_table[t.user_index], iteration);
|
||||
// win32.sleep(1);
|
||||
|
||||
@@ -72,10 +72,10 @@ general_stuff :: proc() {
|
||||
|
||||
{
|
||||
// .. half-closed range
|
||||
// ... open range
|
||||
// .. open range
|
||||
|
||||
for in 0..2 {} // 0, 1
|
||||
for in 0...2 {} // 0, 1, 2
|
||||
for in 0..2 {} // 0, 1, 2
|
||||
}
|
||||
|
||||
{ // Multiple sized booleans
|
||||
@@ -324,17 +324,17 @@ union_type :: proc() {
|
||||
|
||||
/*
|
||||
Entity :: struct {
|
||||
...
|
||||
..
|
||||
derived: union{^Frog, ^Monster},
|
||||
}
|
||||
|
||||
Frog :: struct {
|
||||
using entity: Entity,
|
||||
...
|
||||
..
|
||||
}
|
||||
Monster :: struct {
|
||||
using entity: Entity,
|
||||
...
|
||||
..
|
||||
|
||||
}
|
||||
new_entity :: proc(T: type) -> ^Entity {
|
||||
@@ -559,7 +559,7 @@ threading_example :: proc() {
|
||||
}
|
||||
|
||||
worker_proc :: proc(t: ^thread.Thread) -> int {
|
||||
for iteration in 1...5 {
|
||||
for iteration in 1..5 {
|
||||
fmt.printf("Thread %d is on iteration %d\n", t.user_index, iteration);
|
||||
fmt.printf("`%s`: iteration %d\n", prefix_table[t.user_index], iteration);
|
||||
// win32.sleep(1);
|
||||
|
||||
Reference in New Issue
Block a user