00001 #include "xi-BlockConstruct.h"
00002
00003 namespace xi {
00004
00005
00006 BlockConstruct::BlockConstruct(EToken t, XStr* txt, SdagConstruct* c1, SdagConstruct* c2,
00007 SdagConstruct* c3, SdagConstruct* c4,
00008 SdagConstruct* constructAppend, EntryList* el)
00009 : SdagConstruct(t, txt, c1, c2, c3, c4, constructAppend, el) {}
00010
00011 void BlockConstruct::propagateState(std::list<EncapState*> encap,
00012 std::list<CStateVar*>& plist,
00013 std::list<CStateVar*>& wlist, int uniqueVarNum) {
00014 stateVars = new std::list<CStateVar*>();
00015 stateVars->insert(stateVars->end(), plist.begin(), plist.end());
00016 stateVarsChildren = stateVars;
00017
00018 encapState = encap;
00019 encapStateChild = encap;
00020
00021 propagateStateToChildren(encap, *stateVarsChildren, wlist, uniqueVarNum);
00022 }
00023
00024 }