mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-30 18:02:05 +00:00
Merge remote-tracking branch 'nim-lang/devel' into emscripten-support
This commit is contained in:
@@ -62,7 +62,7 @@ Currently, the following C compilers are supported under Windows:
|
||||
|
||||
However, most testing is done with GCC.
|
||||
|
||||
Bootstrapping from Github
|
||||
Bootstrapping from GitHub
|
||||
-------------------------
|
||||
|
||||
Take a look at the readme file on github `here <https://github.com/nim-lang/Nim#readme>`_
|
||||
|
||||
@@ -75,7 +75,7 @@ macro `=>`*(p, b: expr): expr {.immediate.} =
|
||||
identDefs.add(newEmptyNode())
|
||||
of nnkIdent:
|
||||
identDefs.add(c)
|
||||
identDefs.add(newEmptyNode())
|
||||
identDefs.add(newIdentNode("auto"))
|
||||
identDefs.add(newEmptyNode())
|
||||
of nnkInfix:
|
||||
if c[0].kind == nnkIdent and c[0].ident == !"->":
|
||||
@@ -93,7 +93,7 @@ macro `=>`*(p, b: expr): expr {.immediate.} =
|
||||
of nnkIdent:
|
||||
var identDefs = newNimNode(nnkIdentDefs)
|
||||
identDefs.add(p)
|
||||
identDefs.add(newEmptyNode())
|
||||
identDefs.add(newIdentNode("auto"))
|
||||
identDefs.add(newEmptyNode())
|
||||
params.add(identDefs)
|
||||
of nnkInfix:
|
||||
|
||||
@@ -2235,7 +2235,9 @@ proc `$`*[T: tuple|object](x: T): string =
|
||||
firstElement = false
|
||||
result.add(")")
|
||||
|
||||
proc collectionToString[T](x: T, b, e: string): string =
|
||||
proc collectionToString[T: set | seq](x: T, b, e: string): string =
|
||||
when x is seq:
|
||||
if x.isNil: return "nil"
|
||||
result = b
|
||||
var firstElement = true
|
||||
for value in items(x):
|
||||
|
||||
13
tests/generics/tmap_auto.nim
Normal file
13
tests/generics/tmap_auto.nim
Normal file
@@ -0,0 +1,13 @@
|
||||
import future
|
||||
|
||||
let x = map(@[1, 2, 3], x => x+10)
|
||||
assert x == @[11, 12, 13]
|
||||
|
||||
let y = map(@[(1,"a"), (2,"b"), (3,"c")], x => $x[0] & x[1])
|
||||
assert y == @["1a", "2b", "3c"]
|
||||
|
||||
proc eatsTwoArgProc[T,S,U](a: T, b: S, f: proc(t: T, s: S): U): U =
|
||||
f(a,b)
|
||||
|
||||
let z = eatsTwoArgProc(1, "a", (t,s) => $t & s)
|
||||
assert z == "1a"
|
||||
@@ -1,22 +0,0 @@
|
||||
discard """
|
||||
output:'''2.3242
|
||||
2.982
|
||||
123912.1
|
||||
123912.1823
|
||||
5.0
|
||||
1e+100
|
||||
inf
|
||||
-inf
|
||||
nan
|
||||
'''
|
||||
"""
|
||||
|
||||
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))
|
||||
@@ -1,9 +1,42 @@
|
||||
discard """
|
||||
output:'''@[23, 45]
|
||||
@[, foo, bar]'''
|
||||
@[, foo, bar]
|
||||
{a, b, c}
|
||||
2.3242
|
||||
2.982
|
||||
123912.1
|
||||
123912.1823
|
||||
5.0
|
||||
1e+100
|
||||
inf
|
||||
-inf
|
||||
nan
|
||||
nil
|
||||
nil'''
|
||||
"""
|
||||
|
||||
echo($(@[23, 45]))
|
||||
echo($(@["", "foo", "bar"]))
|
||||
#echo($(["", "foo", "bar"]))
|
||||
#echo($([23, 45]))
|
||||
|
||||
# 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))
|
||||
|
||||
# nil tests
|
||||
var x: seq[string]
|
||||
var y: string
|
||||
echo(x)
|
||||
echo(y)
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
discard """
|
||||
output: "{a, b, c}"
|
||||
"""
|
||||
|
||||
# bug #2395
|
||||
|
||||
let alphaSet: set[char] = {'a'..'c'}
|
||||
echo alphaSet
|
||||
@@ -41,14 +41,14 @@ Nim's Community
|
||||
|
||||
.. container:: standout
|
||||
|
||||
Github
|
||||
GitHub
|
||||
------
|
||||
|
||||
Nim's `source code <http://github.com/nim-lang/Nim>`_ is hosted on Github.
|
||||
Nim's `source code <http://github.com/nim-lang/Nim>`_ is hosted on GitHub.
|
||||
Together with the `wiki <http://github.com/nim-lang/Nim/wiki>`_ and
|
||||
`issue tracker <http://github.com/nim-lang/Nim/issues>`_.
|
||||
|
||||
Github also hosts other projects relating to Nim. These projects are a part
|
||||
GitHub also hosts other projects relating to Nim. These projects are a part
|
||||
of the `nim-lang organisation <http://github.com/nim-lang>`_.
|
||||
This includes the `Nimble package manager <https://github.com/nim-lang/nimble>`_
|
||||
and its `package repository <http://github.com/nim-lang/packages>`_.
|
||||
|
||||
@@ -3,7 +3,7 @@ News
|
||||
====
|
||||
|
||||
..
|
||||
2015-09-14 Version 0.11.4 released
|
||||
2015-xx-xx Version 0.11.4 released
|
||||
==================================
|
||||
|
||||
Changes affecting backwards compatibility
|
||||
@@ -120,9 +120,9 @@ News
|
||||
- Added ``macros.getImpl`` that can be used to access the implementation of
|
||||
a routine or a constant. This allows for example for user-defined inlining
|
||||
of function calls.
|
||||
- Tuple unpacking finally works in a non-var/let context: ``(x, y) == f()``
|
||||
- Tuple unpacking finally works in a non-var/let context: ``(x, y) = f()``
|
||||
is allowed. Note that this doesn't declare ``x`` and ``y`` variables, for
|
||||
this ``let (x, y) == f()`` still needs to be used.
|
||||
this ``let (x, y) = f()`` still needs to be used.
|
||||
- ``when nimvm`` can now be used for compiletime versions of some code
|
||||
sections. Click `here <docs/manual.html#when-nimvm-statement>`_ for details.
|
||||
- Usage of the type ``NimNode`` in a proc now implicitly annotates the proc
|
||||
@@ -792,7 +792,7 @@ is the installation of packages containing libraries and/or applications
|
||||
written in Nim.
|
||||
Even though Nimble is still very young it already is very
|
||||
functional. It can install packages by name, it does so by accessing a
|
||||
packages repository which is hosted on a Github repo. Packages can also be
|
||||
packages repository which is hosted on a GitHub repo. Packages can also be
|
||||
installed via a Git repo URL or Mercurial repo URL. The package repository
|
||||
is searchable through Nimble. Anyone is free to add their own packages to
|
||||
the package repository by forking the
|
||||
|
||||
@@ -9,7 +9,7 @@ Authors: "Andreas Rumpf and contributors"
|
||||
# Everything after ; is the ID
|
||||
Community: "community.html;link_forum"
|
||||
Aporia_IDE: "https://github.com/nim-lang/Aporia;link_aporia"
|
||||
Github_Repo: "http://github.com/Araq/Nim;link_github"
|
||||
GitHub_Repo: "http://github.com/Araq/Nim;link_github"
|
||||
|
||||
|
||||
[Tabs]
|
||||
|
||||
Reference in New Issue
Block a user