Merge branch 'stringify-array' of https://github.com/krux02/Nim into krux02-stringify-array
This commit is contained in:
commit
db0d353281
9 changed files with 89 additions and 71 deletions
|
|
@ -54,7 +54,7 @@ proc launchSwarm(name: ptr SockAddr) {.async.} =
|
|||
k = 0
|
||||
while k < messagesToSend:
|
||||
zeroMem(addr(buffer[0]), 16384)
|
||||
zeroMem(cast[pointer](addr(saddr)), sizeof(Sockaddr_in))
|
||||
zeroMem(cast[pointer](addr(saddr)), sizeof(Sockaddr_in))
|
||||
var message = "Message " & $(i * messagesToSend + k)
|
||||
await sendTo(sock, addr message[0], len(message),
|
||||
name, sizeof(Sockaddr_in).SockLen)
|
||||
|
|
@ -62,7 +62,7 @@ proc launchSwarm(name: ptr SockAddr) {.async.} =
|
|||
16384, cast[ptr SockAddr](addr saddr),
|
||||
addr slen)
|
||||
size = 0
|
||||
var grammString = $buffer
|
||||
var grammString = $buffer.cstring
|
||||
if grammString == message:
|
||||
saveSendingPort(sockport)
|
||||
inc(recvCount)
|
||||
|
|
@ -84,7 +84,7 @@ proc readMessages(server: AsyncFD) {.async.} =
|
|||
16384, cast[ptr SockAddr](addr(saddr)),
|
||||
addr(slen))
|
||||
size = 0
|
||||
var grammString = $buffer
|
||||
var grammString = $buffer.cstring
|
||||
if grammString.startswith("Message ") and
|
||||
saddr.sin_addr.s_addr == 0x100007F:
|
||||
await sendTo(server, addr grammString[0], len(grammString),
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ type
|
|||
of nkList: sons: seq[PCaseNode]
|
||||
else: unused: seq[string]
|
||||
|
||||
TIdObj* = object of TObject
|
||||
TIdObj* = object of RootObj
|
||||
id*: int # unique id; use this for comparisons and not the pointers
|
||||
|
||||
PIdObj* = ref TIdObj
|
||||
|
|
|
|||
|
|
@ -6,9 +6,8 @@ when not defined(windows):
|
|||
var buf: array[0..10, char]
|
||||
while true:
|
||||
var r = read(0, addr(buf), sizeof(buf)-1)
|
||||
add inp, $buf
|
||||
add inp, $buf.cstring
|
||||
if r != sizeof(buf)-1: break
|
||||
|
||||
echo inp
|
||||
#dafkladskölklödsaf ölksdakölfölksfklwe4iojr389wr 89uweokf sdlkf jweklr jweflksdj fioewjfsdlfsd
|
||||
|
||||
|
|
|
|||
|
|
@ -1,42 +1,53 @@
|
|||
discard """
|
||||
output:'''@[23, 45]
|
||||
@[, foo, bar]
|
||||
{a, b, c}
|
||||
2.3242
|
||||
2.982
|
||||
123912.1
|
||||
123912.1823
|
||||
5.0
|
||||
1e+100
|
||||
inf
|
||||
-inf
|
||||
nan
|
||||
nil
|
||||
nil'''
|
||||
output:""
|
||||
"""
|
||||
|
||||
echo($(@[23, 45]))
|
||||
echo($(@["", "foo", "bar"]))
|
||||
#echo($(["", "foo", "bar"]))
|
||||
#echo($([23, 45]))
|
||||
doAssert "@[23, 45]" == $(@[23, 45])
|
||||
doAssert "[32, 45]" == $([32, 45])
|
||||
doAssert "@[, foo, bar]" == $(@["", "foo", "bar"])
|
||||
doAssert "[, foo, bar]" == $(["", "foo", "bar"])
|
||||
|
||||
# bug #2395
|
||||
|
||||
let alphaSet: set[char] = {'a'..'c'}
|
||||
echo alphaSet
|
||||
|
||||
echo($(2.3242))
|
||||
echo($(2.982))
|
||||
echo($(123912.1))
|
||||
echo($(123912.1823))
|
||||
echo($(5.0))
|
||||
echo($(1e100))
|
||||
echo($(1e1000000))
|
||||
echo($(-1e1000000))
|
||||
echo($(0.0/0.0))
|
||||
doAssert "{a, b, c}" == $alphaSet
|
||||
doAssert "2.3242" == $(2.3242)
|
||||
doAssert "2.982" == $(2.982)
|
||||
doAssert "123912.1" == $(123912.1)
|
||||
doAssert "123912.1823" == $(123912.1823)
|
||||
doAssert "5.0" == $(5.0)
|
||||
doAssert "1e+100" == $(1e100)
|
||||
doAssert "inf" == $(1e1000000)
|
||||
doAssert "-inf" == $(-1e1000000)
|
||||
doAssert "nan" == $(0.0/0.0)
|
||||
|
||||
# nil tests
|
||||
# maybe a bit inconsistent in types
|
||||
var x: seq[string]
|
||||
var y: string
|
||||
echo(x)
|
||||
echo(y)
|
||||
doAssert "nil" == $(x)
|
||||
|
||||
var y: string = nil
|
||||
doAssert nil == $(y)
|
||||
|
||||
type
|
||||
Foo = object
|
||||
a: int
|
||||
b: string
|
||||
|
||||
var foo1: Foo
|
||||
|
||||
# nil string should be an some point in time equal to the empty string
|
||||
doAssert(($foo1)[0..9] == "(a: 0, b: ")
|
||||
|
||||
const
|
||||
data = @['a','b', '\0', 'c','d']
|
||||
dataStr = $data
|
||||
|
||||
# ensure same result when on VM or when at program execution
|
||||
doAssert dataStr == $data
|
||||
|
||||
import strutils
|
||||
# array test
|
||||
|
||||
let arr = ['H','e','l','l','o',' ','W','o','r','l','d','!','\0']
|
||||
doAssert $arr == "[H, e, l, l, o, , W, o, r, l, d, !, \0]"
|
||||
doAssert $arr.cstring == "Hello World!"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue