mirror of
https://github.com/roc-lang/roc.git
synced 2025-10-03 08:34:33 +00:00
59 lines
2.2 KiB
Text
59 lines
2.2 KiB
Text
app [main] {
|
|
pf: platform "../test-platform-simple-zig/main.roc",
|
|
}
|
|
|
|
import Api { app_id: "one", protocol: https } as App1
|
|
import Api { app_id: "two", protocol: http } as App2
|
|
import Api { app_id: "prod_1", protocol: http } as Prod
|
|
|
|
https = \url -> "https://$(url)"
|
|
http = \url -> "http://$(url)"
|
|
|
|
users_app1 =
|
|
# pass top-level fn in a module with params
|
|
List.map([1, 2, 3], App1.get_user)
|
|
|
|
main =
|
|
app3_id = "three"
|
|
|
|
import Api { app_id: app3_id, protocol: https } as App3
|
|
|
|
get_user_app3_nested = \user_id ->
|
|
# use captured params def
|
|
App3.get_user(user_id)
|
|
|
|
users_app3_passed =
|
|
# pass top-level fn in a nested def
|
|
List.map([1, 2, 3], App3.get_user)
|
|
|
|
"""
|
|
App1.baseUrl: $(App1.base_url)
|
|
App2.baseUrl: $(App2.base_url)
|
|
App3.baseUrl: $(App3.base_url)
|
|
App1.getUser 1: $(App1.get_user(1))
|
|
App2.getUser 2: $(App2.get_user(2))
|
|
App3.getUser 3: $(App3.get_user(3))
|
|
App1.getPost 1: $(App1.get_post(1))
|
|
App2.getPost 2: $(App2.get_post(2))
|
|
App3.getPost 3: $(App3.get_post(3))
|
|
App1.getPosts [1, 2]: $(Inspect.to_str(App1.get_posts([1, 2])))
|
|
App2.getPosts [3, 4]: $(Inspect.to_str(App2.get_posts([3, 4])))
|
|
App2.getPosts [5, 6]: $(Inspect.to_str(App2.get_posts([5, 6])))
|
|
App1.getPostComments 1: $(App1.get_post_comments(1))
|
|
App2.getPostComments 2: $(App2.get_post_comments(2))
|
|
App2.getPostComments 3: $(App2.get_post_comments(3))
|
|
App1.getCompanies [1, 2]: $(Inspect.to_str(App1.get_companies([1, 2])))
|
|
App2.getCompanies [3, 4]: $(Inspect.to_str(App2.get_companies([3, 4])))
|
|
App2.getCompanies [5, 6]: $(Inspect.to_str(App2.get_companies([5, 6])))
|
|
App1.getPostAliased 1: $(App1.get_post_aliased(1))
|
|
App2.getPostAliased 2: $(App2.get_post_aliased(2))
|
|
App3.getPostAliased 3: $(App3.get_post_aliased(3))
|
|
App1.baseUrlAliased: $(App1.base_url_aliased)
|
|
App2.baseUrlAliased: $(App2.base_url_aliased)
|
|
App3.baseUrlAliased: $(App3.base_url_aliased)
|
|
App1.getUserSafe 1: $(App1.get_user_safe(1))
|
|
Prod.getUserSafe 2: $(Prod.get_user_safe(2))
|
|
usersApp1: $(Inspect.to_str(users_app1))
|
|
getUserApp3Nested 3: $(get_user_app3_nested(3))
|
|
usersApp3Passed: $(Inspect.to_str(users_app3_passed))
|
|
"""
|