1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
|
//
// factory.ss
// Factory example
// Copyright 2018 Alexandre Martins <alemartf(at)gmail(dot)com>
//
using Greeter; // import the factory
object "Application"
{
state "main"
{
// This will print:
// Hello, alex!
g = Greeter("alex");
g.greet();
exit();
}
}
object "Greeting"
{
public name = "anon";
fun greet()
{
Console.print("Hello, " + name + "!");
}
}
@Package
object "Greeter"
{
// Greeter is a factory. It spawns and configures
// a Greeting object for you. Being a package,
// Greeter can be imported and used anywhere.
fun call(name)
{
g = spawn("Greeting");
g.name = name;
return g;
}
}
|