public IResolvelizeScope <WeakAssignOperation> Run(IPopulatableScope scope, IPopulateScopeContext context) { left.GetReturnedType().AcceptsType(right.GetReturnedType()); return(new WeakAssignOperationFinalizeScope( left.Run(scope, context), right.Run(scope, context))); }
public IResolvelizeScope <WeakPathOperation> Run(IPopulatableScope scope, IPopulateScopeContext context) { left.GetReturnedType().HasMember(new NameKey(name)); return(new WeakPathOperationFinalizeScope( left.Run(scope, context), name)); }
public IResolvelizeScope <IWeakTypeReference> Run(IPopulatableScope scope, IPopulateScopeContext context) { // TODO // this is something I don't much like // right runs first because of assign // in assign you might have something like // method [int;int] input { input < ? 2 if { 1 return; } else { input - 1 > fac * input return; } } =: fac // if the left runs first than fac will not be found // and so it will add it to the scope // but if the right is run first // fac works // if I add an assign that goes the other way... // this will break // part of me just thinks // force 'var' on member definition return(new BinaryFinalizeScope( left.Run(scope, context), right.Run(scope, context), make)); }
public IResolvelizeScope <TFrontendCodeElement> Run(IPopulatableScope scope, IPopulateScopeContext context) { return(new TrailingFinalizeScope(left.Run(scope, context), make)); }