From 71489f4f3320306e9c920eb83a908681b7d3ab12 Mon Sep 17 00:00:00 2001 From: Christine Dodrill Date: Thu, 13 Aug 2015 19:20:23 -0700 Subject: [PATCH] start nim rewrite --- .gitignore | 2 ++ Makefile | 5 +++++ Procfile | 1 - ponyapi.nim | 35 +++++++++++++++++++++++++++++++++++ ponyapi.nimble | 6 +++--- 5 files changed, 45 insertions(+), 4 deletions(-) create mode 100644 Makefile delete mode 100644 Procfile create mode 100644 ponyapi.nim diff --git a/.gitignore b/.gitignore index 37744de..5fe4b24 100644 --- a/.gitignore +++ b/.gitignore @@ -59,3 +59,5 @@ docs/_build/ # PyBuilder target/ +ponyapi +nimcache diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..50f104a --- /dev/null +++ b/Makefile @@ -0,0 +1,5 @@ +build: + nim c -d:release --deadcodeElim:on --hints:off ponyapi + +run: build + ./ponyapi diff --git a/Procfile b/Procfile deleted file mode 100644 index 17353e0..0000000 --- a/Procfile +++ /dev/null @@ -1 +0,0 @@ -web: gunicorn ponyapi:app --log-file=- diff --git a/ponyapi.nim b/ponyapi.nim new file mode 100644 index 0000000..7b422c6 --- /dev/null +++ b/ponyapi.nim @@ -0,0 +1,35 @@ +import jester +import json +import strutils + +type + Episode* = object of RootObj + ## An episode of My Little Pony: Friendship is Magic + name*: string ## Episode name + air_date*: int ## Air date in unix time + season*: int ## season number of the episode + episode*: int ## the episode number in the season + is_movie*: bool ## does this record represent a movie? + +var + episodes: seq[Episode] + +for line in lines "./fim.list": + var + ep: Episode + splitLine = line.split " " + timestr = splitLine[1] + seasonstr = splitLine[2] + episodestr = splitLine[3] + is_movie = seasonstr == "99" + name = splitLine[4 .. ^1].join " " + + ep = Episode(name: name, + air_date: timestr.parseInt, + season: seasonstr.parseInt, + episode: episodestr.parseInt, + is_movie: is_movie) + + episodes = episodes & ep + +echo episodes diff --git a/ponyapi.nimble b/ponyapi.nimble index 83b9ad6..c4ea072 100644 --- a/ponyapi.nimble +++ b/ponyapi.nimble @@ -2,9 +2,9 @@ name = "ponyapi" version = "0.1.0" author = "Christine Dodrill " -description = "PonyAPI client https://github.com/Xe/PonyAPI" +description = "PonyAPI server https://github.com/Xe/PonyAPI" license = "MIT" -srcDir = "client/nim" +bin = "ponyapi" [Deps] -Requires: "nim >= 0.10.0" +Requires: "nim >= 0.10.0, jester#head"