1
0
Fork 0
forked from fun/fun

Added HTTP server class to stdlib and an example server written in 100% pure Fun. (0.37.28)

This commit is contained in:
Johannes Findeisen 2025-12-28 21:21:34 +01:00
commit 10b75596cd
6 changed files with 142 additions and 2 deletions

30
examples/class_test.fun Executable file
View file

@ -0,0 +1,30 @@
#!/usr/bin/env fun
/*
* This file is part of the Fun programming language.
* https://fun-lang.xyz/
*
* Copyright 2025 Johannes Findeisen <you@hanez.org>
* Licensed under the terms of the Apache-2.0 license.
* https://opensource.org/license/apache-2-0
*
* Added: 2025-12-28
*/
class Other(number val)
fun _construct(this, val)
this.v = val
class Test()
fun _construct(this)
val = Other(123)
this.a = val
print("a set")
t = Test()
print(t.a.v)
/* Expected output:
a set
123
*/

View file

@ -0,0 +1,10 @@
<!DOCTYPE html>
<html>
<head>
<title>Fun HTTP Server</title>
</head>
<body>
<h1>Welcome to the Fun HTTP Server!</h1>
<p>This page is served from <code>./examples/data/htdocs/index.html</code>.</p>
</body>
</html>

22
examples/extra/http_server.fun Executable file
View file

@ -0,0 +1,22 @@
#!/usr/bin/env fun
/*
* This file is part of the Fun programming language.
* https://fun-lang.xyz/
*
* Copyright 2025 Johannes Findeisen <you@hanez.org>
* Licensed under the terms of the Apache-2.0 license.
* https://opensource.org/license/apache-2-0
*
* Added: 2025-12-28
*/
#include <net/http_server.fun>
port = 8080
htdocs = "./examples/data/htdocs"
server = HTTPServer(port)
server.set_htdocs(htdocs)
server.start()