test1.xreate
No OneTemporary

File Metadata

Created
Thu, Jul 9, 2:26 AM

test1.xreate

interface(extern-c){
externalLibs = library:: pkgconfig("libxml-2.0").
include {
externalLibs = ["scripts/virtualization/test1.h"]
}.
}
import raw ("scripts/virtualization/test1.assembly.lp").
import raw ("scripts/cfa/context.lp").
DictSizo = type slave dict_sizo.
Sizo = type slave sizo.
virt_getPrefix = function:: string
{
dictSizo = intrinsic query("dict_sizo")::[DictSizo].
sizoId = intrinsic query late("sizo_current"->sizoCurrent:: Sizo):: int; demand(sizo)
{
loop fold(dictSizo->entry::DictSizo, 0->id):: int {
if(entry[0] == sizoCurrent):: int { entry[1] } else { id }
}
}.
buf = "000000000"::string.
seq
{ sprintf(buf, "%d", sizoId) }
{ buf }
}
openFile = function(filename::string):: int
{
buf = "0000000000":: string.
prefix = virt_getPrefix():: string.
seq
{sprintf(buf, "/%s/%s", prefix, filename)}
{printf("file opened: %s ", buf)}
}
main = function:: int; entry
{
seq
{ context::attachedSizo(domainA). openFile("test1") }
{ context::attachedSizo(domainB). openFile("test1") }
{ 0 }
}

Event Timeline