view src/parallel_execution/examples/gearsDirectory/GearsDirectory_test.cbc @ 1027:a747a99ae1f2

branch merge
author ichikitakahiro <e165713@ie.u-ryukyu.ac.jp>
date Thu, 31 Mar 2022 14:02:10 +0900
parents 67d57b15b899 56dfb90b2939
children 793b21a8ea12
line wrap: on
line source

#include "../../../context.h"
#interface "GearsDirectory.h"



__code task1(GearsDirectory* gearsDirectory){     
    Integer* name = new Integer();
    name->value = 1;
    goto gearsDirectory->mkdir(name, task2);
}

__code task1_stub(struct Context* context){
    GearsDirectory* gearsDirectory = createGearsDirectoryImpl(context);
    goto task1(context, gearsDirectory);
}

__code task2(GearsDirectory* gearsDirectory){
    Integer* name = new Integer();
    name->value = 1;
    goto gearsDirectory->ls(name, task3);
}

__code task2_stub(struct Context* context){
    GearsDirectory* gearsDirectory = (struct GearsDirectory*)Gearef(context, GearsDirectory)->gearsDirectory;
    goto task2(context, gearsDirectory);
}

__code task3(GearsDirectory* gearsDirectory){
    Integer* name = new Integer();
    name->value = 1;
    goto gearsDirectory->cd2Child(name, exit_code);
}

__code task3_stub(struct Context* context){
    GearsDirectory* gearsDirectory = (struct GearsDirectory*)Gearef(context, GearsDirectory)->gearsDirectory;
    goto task3(context, gearsDirectory);
}

__code task4(GearsDirectory* gearsDirectory){
    goto gearsDirectory->cd2Parent(exit_code);
}

__code task4_stub(struct Context* context){
    GearsDirectory* gearsDirectory = (struct GearsDirectory*)Gearef(context, GearsDirectory)->gearsDirectory;
    goto task4(context, gearsDirectory);
}

int main(int argc, char** argv) {
    printf("main\n");
    goto task1();
}