public AlergenPreparatViewModel(Preparat preparat, Cont user) { PreparatAles = preparat; pAct = new AlergenActions(this); User = user; }
internal ContMap(AltMap <X, Y> yA, Cont <Y> yK) { this.yA = yA; this.yK = yK; }
/// <summary> /// Defines a new variable, that is binds a value to an identifier. /// </summary> private Bounce ApplyDefineVarSpecialForm(IExpression expression, Environment env, Cont cont) { var defineVarSpecialForm = expression as ScmDefineVarSpecialForm; // First evaluate the expression that we are going to bind to a name. return(() => Eval(defineVarSpecialForm.Expression, env, evalResult => { // Bind the value to the given name in the currect environment. env.Define(defineVarSpecialForm.Name, (IExpression)evalResult); // Define always returns the unassigned as result. return (Bounce)cont(ScmUnassigned.Instance); })); }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Do(StaticData.zero).DoJob(ref wr, xK); }
internal override void TryAlt(ref Worker wr, int i, Cont <Y> yK, Else yE) { xA.TryAlt(ref wr, i, new ContBind(this, yK), yE); }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Do(Randomizer.Next(ref wr.RandomLo, ref wr.RandomHi)).DoJob(ref wr, xK); }
internal WithNackCont(Cont <X> xK, Else xE) { this.xK = xK; this.xE = xE; }
/// public abstract Work Do(Cont <X> xK);
internal override void DoJob(ref Worker wr, Cont <X> xK) { Work.Do(Do(xK), ref wr); }
internal override void DoJob(ref Worker wr, Cont <X> xK) { xJJ.DoJob(ref wr, new ContJoin(xK)); }
internal ContJoin(Cont <X> xK) { this.xK = xK; }
internal ContWhile(JobWhileDoDelay <X> uJ, Cont <Unit> uK) { this.uJ = uJ; this.uK = uK; }
internal ContFor(JobFor <S, R, F> fJ, Cont <F> fK, S s) { this.fJ = fJ; this.fK = fK; this.s = s; }
internal ContUsing(JobUsing <X, Y> yJ, Cont <Y> yK) { this.yJ = yJ; this.yK = yK; }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Handler.DoHandle(xK, ref wr, e); }
internal override void DoJob(ref Worker wr, Cont <Unit> uK) { Worker.PushNew(ref wr, Do()); Work.Do(uK, ref wr); }
internal override void TryAlt(ref Worker wr, int i, Cont <X> xK, Else xE) { Handler.DoHandle(xK, ref wr, e); }
internal JobWork(Job <T> tJ, Cont <T> tK) { this.tJ = tJ; this.tK = tK; }
internal GuardJobCont(Cont <X> xK) { this.xK = xK; }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Do(wr.Scheduler).DoJob(ref wr, xK); }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Do(StaticData.zero).DoJob(ref wr, new GuardJobCont <X, xA>(xK)); }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Do(xK.GetProc(ref wr)).DoJob(ref wr, xK); }
internal ContBind(AltBind <X, Y> yA, Cont <Y> yK) { this.yA = yA; this.yK = yK; }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Cont.Do(xK, ref wr, Do(xK.GetProc(ref wr))); }
internal override void DoJob(ref Worker wr, Cont <Y> yK) { xA.DoJob(ref wr, new ContMap(this, yK)); }
/// internal override void DoJob(ref Worker wr, Cont <ulong> rK) { Cont.Do(rK, ref wr, Randomizer.Next(ref wr.RandomLo, ref wr.RandomHi)); }
internal override void DoJob(ref Worker wr, Cont <Unit> uK) { var mv = this.MV; TryNextTaker: var state = mv.State; if (state == MVar <T> .Locked) { goto TryNextTaker; } if (state != Interlocked.CompareExchange(ref mv.State, MVar <T> .Locked, state)) { goto TryNextTaker; } if (state == MVar <T> .Empty) { goto WasEmpty; } var tail = mv.Takers; if (null == tail) { goto MVarFull; } var cursor = tail.Next; if (tail == cursor) { mv.Takers = null; mv.State = MVar <T> .Empty; } else { tail.Next = cursor.Next; mv.State = MVar <T> .Demand; tail = cursor as Cont <T>; } var taker = tail as Taker <T>; if (null == taker) { goto GotTaker; } var pk = taker.Pick; TryPick: int st = Pick.TryPick(pk); if (st > 0) { goto TryNextTaker; } if (st < 0) { goto TryPick; } Pick.SetNacks(ref wr, taker.Me, pk); tail = taker.Cont; GotTaker: tail.Value = this.X; Worker.Push(ref wr, tail); Work.Do(uK, ref wr); return; WasEmpty: mv.Value = this.X; mv.State = MVar <T> .Full; Work.Do(uK, ref wr); return; MVarFull: uK.DoHandle(ref wr, new Exception("MVar full")); }
internal override void DoJob(ref Worker wr, Cont <X> xK) { Do().DoJob(ref wr, xK); }
/// <summary> /// This method defines a procedure, effectively binds lambda to an identifier. /// </summary> private Bounce ApplyDefineProcSpecialForm(IExpression expression, Environment env, Cont cont) { var defineProcSpecialForm = expression as ScmDefineProcSpecialForm; // Create a closure. var newProcedure = new ScmClosure(defineProcSpecialForm, env); // Bind it to the given name. env.Define(defineProcSpecialForm.ProcedureName, newProcedure); // Define returns the unassigned as result. return((Bounce)cont(ScmUnassigned.Instance)); }
public List <InformatiiCos> Cumparaturi(Cont user) { RestaurantEntities1 context = new RestaurantEntities1(); List <InformatiiCos> aux = new List <InformatiiCos>(); foreach (var preparat in Preparate(user)) { string denumire = ""; foreach (var prep in context.Preparats.ToList()) { if (prep.id_preparat == preparat.id_preparat) { denumire = prep.denumire; } } double pret = 0; foreach (var prep in context.Preparats.ToList()) { if (prep.id_preparat == preparat.id_preparat) { pret = double.Parse(prep.pret.ToString()); } } int bucati = 0; foreach (var prep in context.PreparatComandas.ToList()) { if (prep.id_preparat == preparat.id_preparat) { bucati = int.Parse(prep.nrBucati.ToString()); } } aux.Add(new InformatiiCos(denumire, bucati, pret)); } foreach (var meniu in Meniuri(user)) { string denumire = ""; foreach (var prep in context.Menius.ToList()) { if (prep.id_meniu == meniu.id_meniu) { denumire = prep.denumireMeniu; } } double pret = 0; foreach (var prep in context.Menius.ToList()) { if (prep.id_meniu == meniu.id_meniu) { pret = double.Parse(prep.pret.ToString()); } } int bucati = 0; foreach (var prep in context.MeniuComandas.ToList()) { if (prep.id_meniu == meniu.id_meniu) { bucati = int.Parse(prep.nrBucati.ToString()); } } aux.Add(new InformatiiCos(denumire, bucati, pret)); } return(aux); }