public BinaryOpNode(IRContext irContext, BinaryOpKind op, IntermediateNode left, IntermediateNode right) : base(irContext) { Contracts.AssertValue(left); Contracts.AssertValue(right); Op = op; Left = left; Right = right; }
public AggregateCoercionNode(IRContext irContext, UnaryOpKind op, ScopeSymbol scope, IntermediateNode child, IReadOnlyDictionary <DName, IntermediateNode> fieldCoercions) : base(irContext) { Contracts.AssertValue(child); Contracts.Assert(op == UnaryOpKind.RecordToRecord || op == UnaryOpKind.TableToTable); Op = op; Scope = scope; Child = child; FieldCoercions = fieldCoercions; }
public LazyEvalNode(IRContext irContext, IntermediateNode wrapped) : base(irContext) { Contracts.AssertValue(wrapped); Child = wrapped; }