コード例 #1
0
ファイル: Contexts.cs プロジェクト: lanicon/Super.NET
 // ReSharper disable once TooManyDependencies
 Contexts(ICommand dispose, IMutable <object> store, Func <string, object> context, Func <object, ICommand> command)
 {
     _dispose = dispose;
     _store   = store;
     _context = context;
     _command = command;
 }
コード例 #2
0
ファイル: Store.cs プロジェクト: DragonSpark/Framework
 public Store(IMutable <T> mutable) : this(A.Result(mutable)
                                           .Then()
                                           .Select(Is.Assigned <T>())
                                           .Accept()
                                           .Out(),
                                           mutable)
 {
 }
コード例 #3
0
ファイル: MemberValue.cs プロジェクト: lisiynos/pascalabcnet
		internal MemberValue(MemberInfo memberInfo,
		                     Process process,
		                     IExpirable[] expireDependencies,
		                     IMutable[] mutateDependencies,
		                     CorValueGetter corValueGetter)
			:base (memberInfo.Name,
			       process,
			       expireDependencies,
			       mutateDependencies,
			       corValueGetter)
		{
			this.memberInfo = memberInfo;
		}
コード例 #4
0
		internal LocalVariable(string name,
		                       Process process,
		                       IExpirable[] expireDependencies,
		                       IMutable[] mutateDependencies,
		                       CorValueGetter corValueGetter)
			:base (name,
			       process,
			       expireDependencies,
			       mutateDependencies,
			       corValueGetter)
		{
			
		}
コード例 #5
0
ファイル: ArrayElement.cs プロジェクト: lisiynos/pascalabcnet
		internal ArrayElement(uint[] indicies,
		                      Process process,
		                      IExpirable[] expireDependencies,
		                      IMutable[] mutateDependencies,
		                      CorValueGetter corValueGetter)
			:base (GetNameFromIndices(indicies),
			       process,
			       expireDependencies,
			       mutateDependencies,
			       corValueGetter)
		{
			this.indicies = indicies;
		}
コード例 #6
0
		internal MethodArgument(string name,
		                        int index,
		                        Process process,
		                        IExpirable[] expireDependencies,
		                        IMutable[] mutateDependencies,
		                        CorValueGetter corValueGetter)
			:base (name,
			       process,
			       expireDependencies,
			       mutateDependencies,
			       corValueGetter)
		{
			this.index = index;
		}
コード例 #7
0
ファイル: NamedValue.cs プロジェクト: lisiynos/pascalabcnet
		internal NamedValue(string name,
		                    Process process,
		                    IExpirable[] expireDependencies,
		                    IMutable[] mutateDependencies,
		                    CorValueGetter corValueGetter)
			:base (process,
			       expireDependencies,
			       mutateDependencies,
			       corValueGetter)
		{
			this.name = name;
			
			// TODO: clean up
			if (name.StartsWith("<") && name.Contains(">") && name != "<Base class>") {
				string middle = name.TrimStart('<').Split('>')[0]; // Get text between '<' and '>'
				if (middle != "") {
					this.name = middle;
				}
			}
		}
コード例 #8
0
 public AddRange(IMutable <Array <T> > array) => _array = array;
コード例 #9
0
 /// <summary>
 /// Adds a mutable status event.
 /// </summary>
 /// <param name="statusEvent">The status event.</param>
 protected void AddStatusEvent(IMutable statusEvent)
 {
     this.statusEventsKey.Insert(0, new StatusEvent(statusEvent));
 }
コード例 #10
0
 /// <summary>
 /// Initializes a new instance of the <see cref="StatusEvent"/> class.
 /// </summary>
 /// <param name="eventData">The mutable event data.</param>
 public StatusEvent(IMutable eventData)
     : this()
 {
     this.mutableEventData = eventData;
     this.mutableEventData.ValueChanged += this.OnEventDataChanged;
 }
コード例 #11
0
 void AddMutateDependency(IMutable dependency)
 {
     dependency.Changed += delegate { NotifyChange(); };
 }
コード例 #12
0
 public DelayedIntCastArgs(int value, IMutable target)
 {
     this.value  = value;
     this.target = target;
 }
コード例 #13
0
 public Registry(IMutable <Array <T> > source) : this(source, new AddRange <T>(source), new Add <T>(source))
 {
 }
コード例 #14
0
 public static void CallMutate(this IMutable target)
 {
     target.Mutate();
 }
コード例 #15
0
 public Store(ICondition <None> condition, IMutable <T> mutable) : base(mutable) => Condition = condition;
コード例 #16
0
 public Store(IMutable <T> mutable) : this(mutable.Select(IsAssigned <T> .Default).ToSelect().ToCondition(),
                                           mutable)
 {
 }
コード例 #17
0
ファイル: Contexts.cs プロジェクト: lanicon/Super.NET
 public Contexts(ICommand dispose, IMutable <object> store, Func <string, object> context)
     : this(dispose, store, context, store.AsCommand().Then().Out)
 {
 }
コード例 #18
0
 public Mutable(IMutable <T> mutable) : this(mutable.Execute, mutable.Get)
 {
 }
コード例 #19
0
ファイル: Value.cs プロジェクト: lisiynos/pascalabcnet
		void AddMutateDependency(IMutable dependency)
		{
			dependency.Changed += delegate { NotifyChange(); };
		}
コード例 #20
0
ファイル: Value.cs プロジェクト: lisiynos/pascalabcnet
		internal Value(Process process,
		               IExpirable[] expireDependencies,
		               IMutable[] mutateDependencies,
		               CorValueGetter corValueGetter)
		{
			this.process = process;
			
			AddExpireDependency(process);
			foreach(IExpirable exp in expireDependencies) {
				AddExpireDependency(exp);
			}
			
			foreach(IMutable mut in mutateDependencies) {
				AddMutateDependency(mut);
			}
			
			this.corValueGetter = corValueGetter;
		}