2 types derived from PropagatorResult
System.Data.Entity (2)
System\Data\Mapping\Update\Internal\PropagatorResult.cs (2)
265private class SimpleValue : PropagatorResult 513private class StructuralValue : PropagatorResult
335 references to PropagatorResult
System.Data.Entity (335)
System\Data\Mapping\Update\Internal\ChangeNode.cs (9)
25/// within a row are associated with a <see cref="PropagatorResult" /> through the <see cref= 52private List<PropagatorResult> m_inserted = new List<PropagatorResult>(); 53private List<PropagatorResult> m_deleted = new List<PropagatorResult>(); 54private PropagatorResult m_placeholder; 67internal List<PropagatorResult> Inserted { get { return m_inserted; } } 72internal List<PropagatorResult> Deleted { get { return m_deleted; } } 78internal PropagatorResult Placeholder
System\Data\Mapping\Update\Internal\CompositeKey.cs (12)
26internal readonly PropagatorResult[] KeyComponents; 34internal CompositeKey(PropagatorResult[] constants) 59PropagatorResult[] mergedKeyValues = new PropagatorResult[this.KeyComponents.Length]; 97PropagatorResult leftValue = left.KeyComponents[i]; 98PropagatorResult rightValue = right.KeyComponents[i]; 103if (leftValue.Identifier != PropagatorResult.NullIdentifier) 105if (rightValue.Identifier == PropagatorResult.NullIdentifier || 113if (rightValue.Identifier != PropagatorResult.NullIdentifier || 130foreach (PropagatorResult keyComponent in key.KeyComponents) 139private int GetComponentHashCode(PropagatorResult keyComponent) 141if (keyComponent.Identifier == PropagatorResult.NullIdentifier)
System\Data\Mapping\Update\Internal\DynamicUpdateCommand.cs (10)
34PropagatorResult originalValues, PropagatorResult currentValues, DbModificationCommandTree tree, 49foreach (KeyValuePair<EdmMember, PropagatorResult> member in 56if (PropagatorResult.NullIdentifier != identifier && 97internal override long Execute(UpdateTranslator translator, EntityConnection connection, Dictionary<int, object> identifierValues, List<KeyValuePair<PropagatorResult, object>> generatedValues) 141PropagatorResult result = this.CurrentValues.GetMemberValue(columnOrdinal); 144generatedValues.Add(new KeyValuePair<PropagatorResult, object>(result, value)); 148if (PropagatorResult.NullIdentifier != identifier) 324PropagatorResult thisResult = (this.Operator == ModificationOperator.Delete ? this.OriginalValues : this.CurrentValues); 325PropagatorResult otherResult = (other.Operator == ModificationOperator.Delete ? other.OriginalValues : other.CurrentValues);
System\Data\Mapping\Update\Internal\ExtractedStateEntry.cs (2)
24internal readonly PropagatorResult Original; 25internal readonly PropagatorResult Current;
System\Data\Mapping\Update\Internal\ExtractorMetadata.cs (19)
120/// Populates a new <see cref="PropagatorResult"/> object representing a member of a record matching the 133internal PropagatorResult RetrieveMember(IEntityStateEntry stateEntry, IExtendedDataRecord record, bool useCurrentValues, 154identifier = PropagatorResult.NullIdentifier; 198private PropagatorResult CreateEntityKeyResult(IEntityStateEntry stateEntry, EntityKey entityKey) 206PropagatorResult[] keyValues = new PropagatorResult[keyMemberCount]; 234keyValues[ordinal] = PropagatorResult.CreateKeyValue( 243return PropagatorResult.CreateStructuralValue(keyValues, keyMetadata.m_type, false); 246private PropagatorResult CreateSimpleResult(IEntityStateEntry stateEntry, IExtendedDataRecord record, MemberInformation memberInformation, 254if (PropagatorResult.NullIdentifier != identifier) 257PropagatorResult result; 260result = PropagatorResult.CreateServerGenKeyValue(flags, value, stateEntry, identifier, recordOrdinal); 264result = PropagatorResult.CreateKeyValue(flags, value, stateEntry, identifier); 280return PropagatorResult.CreateServerGenSimpleValue(flags, value, updatableRecord, recordOrdinal); 284return PropagatorResult.CreateSimpleValue(flags, value); 300internal static PropagatorResult ExtractResultFromRecord(IEntityStateEntry stateEntry, bool isModified, IExtendedDataRecord record, 307PropagatorResult[] nestedValues = new PropagatorResult[record.FieldCount]; 314return PropagatorResult.CreateStructuralValue(nestedValues, structuralType, isModified);
System\Data\Mapping\Update\Internal\FunctionMappingTranslator.cs (8)
128PropagatorResult result = stateEntry.Current.GetMemberValue(resultBinding.Property); 232PropagatorResult result; 255result = PropagatorResult.CreateSimpleValue(PropagatorFlags.NoFlags, null); 261PropagatorResult relationshipResult = parameterBinding.IsCurrent ? 264PropagatorResult endResult = relationshipResult.GetMemberValue(endMember); 321PropagatorResult recordResult; 342PropagatorResult endResult = recordResult.GetMemberValue(endMember); 343PropagatorResult keyResult = endResult.GetMemberValue(keyProperty);
System\Data\Mapping\Update\Internal\FunctionUpdateCommand.cs (12)
65private List<KeyValuePair<string, PropagatorResult>> m_resultColumns; 132internal void SetParameterValue(PropagatorResult result, StorageModificationFunctionParameterBinding parameterBinding, UpdateTranslator translator) 143if (PropagatorResult.NullIdentifier != identifier) 171internal void AddResultColumn(UpdateTranslator translator, String columnName, PropagatorResult result) 176m_resultColumns = new List<KeyValuePair<string, PropagatorResult>>(initializeSize); 178m_resultColumns.Add(new KeyValuePair<string, PropagatorResult>(columnName, result)); 181if (PropagatorResult.NullIdentifier != identifier) 210List<KeyValuePair<PropagatorResult, object>> generatedValues) 251.Select(r => new KeyValuePair<int, PropagatorResult>(GetColumnOrdinal(translator, reader, r.Key), r.Value)) 268PropagatorResult result = resultColumn.Value; 269generatedValues.Add(new KeyValuePair<PropagatorResult, object>(result, value)); 273if (PropagatorResult.NullIdentifier != identifier)
System\Data\Mapping\Update\Internal\KeyManager.cs (8)
85internal void RegisterIdentifierOwner(PropagatorResult owner) 87Debug.Assert(PropagatorResult.NullIdentifier != owner.Identifier, "invalid operation for a " + 96internal bool TryGetIdentifierOwner(int identifier, out PropagatorResult owner) 157internal object GetPrincipalValue(PropagatorResult result) 161if (PropagatorResult.NullIdentifier == currentIdentifier) 172PropagatorResult ownerResult = _identifiers[principal].Owner; 380PropagatorResult owner = _identifiers[identifierInCycle].Owner; 519internal PropagatorResult Owner;
System\Data\Mapping\Update\Internal\Propagator.cs (8)
224foreach(PropagatorResult row in input.Inserted) 230foreach(PropagatorResult row in input.Deleted) 250private PropagatorResult Project(DbProjectExpression node, PropagatorResult row, TypeUsage resultType) 264PropagatorResult[] projectedValues = new PropagatorResult[projection.Arguments.Count]; 273PropagatorResult projectedRow = PropagatorResult.CreateStructuralValue(projectedValues, (StructuralType)resultType.EdmType, false);
System\Data\Mapping\Update\Internal\Propagator.Evaluator.cs (62)
54private class Evaluator : UpdateExpressionVisitor<PropagatorResult> 62private Evaluator(PropagatorResult row, Propagator parent) 73private PropagatorResult m_row; 93internal static IEnumerable<PropagatorResult> Filter(DbExpression predicate, IEnumerable<PropagatorResult> rows, Propagator parent) 95foreach (PropagatorResult row in rows) 114internal static bool EvaluatePredicate(DbExpression predicate, PropagatorResult row, Propagator parent) 117PropagatorResult expressionResult = predicate.Accept(evaluator); 132static internal PropagatorResult Evaluate(DbExpression node, PropagatorResult row, Propagator parent) 134DbExpressionVisitor<PropagatorResult> evaluator = new Evaluator(row, parent); 144private static bool? ConvertResultToBool(PropagatorResult result) 165private static PropagatorResult ConvertBoolToResult(bool? booleanValue, params PropagatorResult[] inputs) 177return PropagatorResult.CreateSimpleValue(flags, result); 186public override PropagatorResult Visit(DbIsOfExpression predicate) 195PropagatorResult childResult = Visit(predicate.Argument); 215public override PropagatorResult Visit(DbComparisonExpression predicate) 222PropagatorResult leftResult = Visit(predicate.Left); 223PropagatorResult rightResult = Visit(predicate.Right); 254public override PropagatorResult Visit(DbAndExpression predicate) 258PropagatorResult left = Visit(predicate.Left); 259PropagatorResult right = Visit(predicate.Right); 282public override PropagatorResult Visit(DbOrExpression predicate) 286PropagatorResult left = Visit(predicate.Left); 287PropagatorResult right = Visit(predicate.Right); 305private static PropagatorResult CreatePerservedAndKnownResult(object value) 308return PropagatorResult.CreateSimpleValue(PropagatorFlags.Preserve, value); 311private static bool PreservedAndKnown(PropagatorResult result) 322public override PropagatorResult Visit(DbNotExpression predicate) 326PropagatorResult child = Visit(predicate.Argument); 339public override PropagatorResult Visit(DbCaseExpression node) 346List<PropagatorResult> inputs = new List<PropagatorResult>(); 350PropagatorResult whenResult = Visit(when); 364PropagatorResult matchResult; 371PropagatorResult result = matchResult.ReplicateResultWithNewFlags(resultFlags); 383public override PropagatorResult Visit(DbVariableReferenceExpression node) 395public override PropagatorResult Visit(DbPropertyExpression node) 400PropagatorResult instance = Visit(node.Instance); 401PropagatorResult result; 405result = PropagatorResult.CreateSimpleValue(instance.PropagatorFlags, null); 423public override PropagatorResult Visit(DbConstantExpression node) 428PropagatorResult result = PropagatorResult.CreateSimpleValue(PropagatorFlags.Preserve, node.Value); 438public override PropagatorResult Visit(DbRefKeyExpression node) 443PropagatorResult argument = Visit(node.Argument); 454public override PropagatorResult Visit(DbNullExpression node) 459PropagatorResult result = PropagatorResult.CreateSimpleValue(PropagatorFlags.Preserve, null); 469public override PropagatorResult Visit(DbTreatExpression node) 473PropagatorResult childResult = Visit(node.Argument); 486PropagatorResult result = PropagatorResult.CreateSimpleValue(childResult.PropagatorFlags, null); 495public override PropagatorResult Visit(DbCastExpression node) 499PropagatorResult childResult = Visit(node.Argument); 526PropagatorResult result = childResult.ReplicateResultWithNewValue(resultValue); 563public override PropagatorResult Visit(DbIsNullExpression node) 567PropagatorResult argumentResult = Visit(node.Argument); 582private static PropagatorFlags PropagateUnknownAndPreserveFlags(PropagatorResult result, IEnumerable<PropagatorResult> inputs) 589foreach (PropagatorResult input in inputs)
System\Data\Mapping\Update\Internal\Propagator.ExtentPlaceholderCreator.cs (25)
112internal static PropagatorResult CreatePlaceholder(EntitySetBase extent, UpdateTranslator parent) 139private PropagatorResult CreateEntitySetPlaceholder(EntitySet entitySet) 143PropagatorResult[] memberValues = new PropagatorResult[members.Count]; 147PropagatorResult memberValue = CreateMemberPlaceholder(members[ordinal]); 151PropagatorResult result = PropagatorResult.CreateStructuralValue(memberValues, entitySet.ElementType, false); 161private PropagatorResult CreateAssociationSetPlaceholder(AssociationSet associationSet) 166PropagatorResult[] endReferenceValues = new PropagatorResult[endMetadata.Count]; 175PropagatorResult[] keyValues = new PropagatorResult[entityType.KeyMembers.Count]; 179PropagatorResult keyValue = CreateMemberPlaceholder(keyMember); 184PropagatorResult refKeys = PropagatorResult.CreateStructuralValue(keyValues, endType, false); 189PropagatorResult result = PropagatorResult.CreateStructuralValue(endReferenceValues, associationSet.ElementType, false); 198private PropagatorResult CreateMemberPlaceholder(EdmMember member) 211internal PropagatorResult Visit(EdmMember node) 213PropagatorResult result; 226PropagatorResult[] args = new PropagatorResult[members.Count]; 233result = PropagatorResult.CreateStructuralValue(args, structuralType, false); 240private static void GetPropagatorResultForPrimitiveType(PrimitiveType primitiveType, out PropagatorResult result) 253result = PropagatorResult.CreateSimpleValue(PropagatorFlags.NoFlags, value);
System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.cs (26)
23using JoinDictionary = Dictionary<CompositeKey, Tuple<CompositeKey, PropagatorResult>>; 291Tuple<CompositeKey, PropagatorResult> leftInsert = null; 292Tuple<CompositeKey, PropagatorResult> leftDelete = null; 293Tuple<CompositeKey, PropagatorResult> rightInsert = null; 294Tuple<CompositeKey, PropagatorResult> rightDelete = null; 317Action<Tuple<CompositeKey, PropagatorResult>> addStateEntries = (r) => 392private PropagatorResult CreateResultTuple(Tuple<CompositeKey, PropagatorResult> left, Tuple<CompositeKey, PropagatorResult> right, ChangeNode result) 397Dictionary<PropagatorResult, PropagatorResult> map = null; 407map = new Dictionary<PropagatorResult, PropagatorResult>(); 415PropagatorResult[] joinRecordValues = new PropagatorResult[2]; 418PropagatorResult join = PropagatorResult.CreateStructuralValue(joinRecordValues, (StructuralType)result.ElementType.EdmType, false); 423PropagatorResult replacement; 439private PropagatorResult LeftPlaceholder(CompositeKey key, PopulateMode mode) 450private PropagatorResult RightPlaceholder(CompositeKey key, PopulateMode mode) 463private JoinDictionary ProcessKeys(IEnumerable<PropagatorResult> instances, ReadOnlyCollection<DbExpression> keySelectors) 470foreach (PropagatorResult instance in instances) 480private static CompositeKey ExtractKey(PropagatorResult change, ReadOnlyCollection<DbExpression> keySelectors, Propagator parent) 483PropagatorResult[] keyValues = new PropagatorResult[keySelectors.Count]; 486PropagatorResult constant = Evaluator.Evaluate(keySelectors[i], change, parent);
System\Data\Mapping\Update\Internal\Propagator.JoinPropagator.SubstitutingCloneVisitor.cs (4)
66internal static PropagatorResult Populate(PropagatorResult placeholder, CompositeKey key, 81PropagatorResult result = placeholder.Replace(node => 104return PropagatorResult.CreateSimpleValue(flags, value);
System\Data\Mapping\Update\Internal\PropagatorResult.cs (51)
128internal virtual PropagatorResult Next 151internal virtual PropagatorResult GetMemberValue(int ordinal) 161internal PropagatorResult GetMemberValue(EdmMember member) 171internal virtual PropagatorResult[] GetMemberValues() 181internal abstract PropagatorResult ReplicateResultWithNewFlags(PropagatorFlags flags); 188internal virtual PropagatorResult ReplicateResultWithNewValue(object value) 198internal abstract PropagatorResult Replace(Func<PropagatorResult, PropagatorResult> map); 211internal virtual PropagatorResult Merge(KeyManager keyManager, PropagatorResult other) 260internal static PropagatorResult CreateSimpleValue(PropagatorFlags flags, object value) 301internal override PropagatorResult ReplicateResultWithNewFlags(PropagatorFlags flags) 306internal override PropagatorResult ReplicateResultWithNewValue(object value) 311internal override PropagatorResult Replace(Func<PropagatorResult, PropagatorResult> map) 317internal static PropagatorResult CreateServerGenSimpleValue(PropagatorFlags flags, object value, CurrentValueRecord record, int recordOrdinal) 345internal override PropagatorResult ReplicateResultWithNewFlags(PropagatorFlags flags) 350internal override PropagatorResult ReplicateResultWithNewValue(object value) 356internal static PropagatorResult CreateKeyValue(PropagatorFlags flags, object value, IEntityStateEntry stateEntry, int identifier) 396internal override PropagatorResult Next 404internal override PropagatorResult ReplicateResultWithNewFlags(PropagatorFlags flags) 409internal override PropagatorResult ReplicateResultWithNewValue(object value) 424internal override PropagatorResult Merge(KeyManager keyManager, PropagatorResult other) 461internal static PropagatorResult CreateServerGenKeyValue(PropagatorFlags flags, object value, IEntityStateEntry stateEntry, int identifier, int recordOrdinal) 481internal override PropagatorResult ReplicateResultWithNewFlags(PropagatorFlags flags) 486internal override PropagatorResult ReplicateResultWithNewValue(object value) 502internal static PropagatorResult CreateStructuralValue(PropagatorResult[] values, StructuralType structuralType, bool isModified) 515internal StructuralValue(PropagatorResult[] values, StructuralType structuralType) 525private readonly PropagatorResult[] m_values; 543internal override PropagatorResult GetMemberValue(int ordinal) 548internal override PropagatorResult[] GetMemberValues() 553internal override PropagatorResult ReplicateResultWithNewFlags(PropagatorFlags flags) 558internal override PropagatorResult Replace(Func<PropagatorResult, PropagatorResult> map) 560PropagatorResult[] newValues = ReplaceValues(map); 564protected PropagatorResult[] ReplaceValues(Func<PropagatorResult, PropagatorResult> map) 566PropagatorResult[] newValues = new PropagatorResult[m_values.Length]; 570PropagatorResult newValue = m_values[i].Replace(map); 583internal UnmodifiedStructuralValue(PropagatorResult[] values, StructuralType structuralType) 596internal override PropagatorResult Replace(Func<PropagatorResult, PropagatorResult> map) 598PropagatorResult[] newValues = ReplaceValues(map);
System\Data\Mapping\Update\Internal\RecordConverter.cs (3)
54internal PropagatorResult ConvertOriginalValuesToPropagatorResult(IEntityStateEntry stateEntry, ModifiedPropertiesBehavior modifiedPropertiesBehavior) 69internal PropagatorResult ConvertCurrentValuesToPropagatorResult(IEntityStateEntry stateEntry, ModifiedPropertiesBehavior modifiedPropertiesBehavior) 74private PropagatorResult ConvertStateEntryToPropagatorResult(IEntityStateEntry stateEntry, bool useCurrentValues, ModifiedPropertiesBehavior modifiedPropertiesBehavior)
System\Data\Mapping\Update\Internal\SourceInterpreter.cs (6)
42internal static ReadOnlyCollection<IEntityStateEntry> GetAllStateEntries(PropagatorResult source, UpdateTranslator translator, 55private void RetrieveResultMarkup(PropagatorResult source) 59if (source.Identifier != PropagatorResult.NullIdentifier) 68if (source.Identifier != PropagatorResult.NullIdentifier) 72PropagatorResult owner; 96foreach (PropagatorResult child in source.GetMemberValues())
System\Data\Mapping\Update\Internal\TableChangeProcessor.cs (20)
110Dictionary<CompositeKey, PropagatorResult> deleteResults = ProcessKeys(compiler, changeNode.Deleted, keys); 111Dictionary<CompositeKey, PropagatorResult> insertResults = ProcessKeys(compiler, changeNode.Inserted, keys); 118PropagatorResult deleteResult; 119PropagatorResult insertResult; 179private Dictionary<CompositeKey, PropagatorResult> ProcessKeys(UpdateCompiler compiler, List<PropagatorResult> changes, Set<CompositeKey> keys) 181Dictionary<CompositeKey, PropagatorResult> map = new Dictionary<CompositeKey, PropagatorResult>( 184foreach (PropagatorResult change in changes) 187PropagatorResult row = change; 192PropagatorResult other; 206private void DiagnoseKeyCollision(UpdateCompiler compiler, PropagatorResult change, CompositeKey key, PropagatorResult other) 235foreach (PropagatorResult keyValue in key.KeyComponents.Concat(otherKey.KeyComponents)) 240PropagatorResult dependentResult; 266private PropagatorResult[] GetKeyConstants(PropagatorResult row) 268PropagatorResult[] keyConstants = new PropagatorResult[m_keyOrdinals.Length]; 271PropagatorResult constant = row.GetMemberValue(m_keyOrdinals[i]);
System\Data\Mapping\Update\Internal\UpdateCommand.cs (11)
35protected UpdateCommand(PropagatorResult originalValues, PropagatorResult currentValues) 41private readonly PropagatorResult m_originalValues; 42private readonly PropagatorResult m_currentValues; 82internal PropagatorResult OriginalValues { get { return m_originalValues; } } 87internal PropagatorResult CurrentValues { get { return m_currentValues; } } 160private void AddReferencedEntities(UpdateTranslator translator, PropagatorResult result, KeyToListMap<EntityKey, UpdateCommand> referencedEntities) 162foreach (PropagatorResult property in result.GetMemberValues()) 164if (property.IsSimple && property.Identifier != PropagatorResult.NullIdentifier && 169PropagatorResult owner; 191List<KeyValuePair<PropagatorResult, object>> generatedValues);
System\Data\Mapping\Update\Internal\UpdateCommandOrderer.cs (5)
390private ForeignKeyValue(ReferentialConstraint metadata, PropagatorResult record, 398PropagatorResult[] keyValues = new PropagatorResult[keyProperties.Count]; 432internal static bool TryCreateTargetKey(ReferentialConstraint metadata, PropagatorResult record, bool isInsert, out ForeignKeyValue key) 450internal static bool TryCreateSourceKey(ReferentialConstraint metadata, PropagatorResult record, bool isInsert, out ForeignKeyValue key)
System\Data\Mapping\Update\Internal\UpdateCompiler.cs (23)
55internal UpdateCommand BuildDeleteCommand(PropagatorResult oldRow, TableChangeProcessor processor) 81internal UpdateCommand BuildUpdateCommand(PropagatorResult oldRow, 82PropagatorResult newRow, TableChangeProcessor processor) 142internal UpdateCommand BuildInsertCommand(PropagatorResult newRow, TableChangeProcessor processor) 189private IEnumerable<DbModificationClause> BuildSetClauses(DbExpressionBinding target, PropagatorResult row, 190PropagatorResult originalRow, TableChangeProcessor processor, bool insertMode, out Dictionary<int, string> outputIdentifiers, out DbExpression returning, 193Dictionary<EdmProperty, PropagatorResult> setClauses = new Dictionary<EdmProperty, PropagatorResult>(); 206PropagatorResult propertyResult = row.GetMemberValue(propertyOrdinal); 208if (PropagatorResult.NullIdentifier != propertyResult.Identifier) 256if (PropagatorResult.NullIdentifier != identifier) 301PropagatorResult originalPropertyResult = originalRow.GetMemberValue(propertyOrdinal); 333foreach (KeyValuePair<EdmProperty, PropagatorResult> setClause in setClauses) 362private DbExpression BuildPredicate(DbExpressionBinding target, PropagatorResult referenceRow, PropagatorResult current, 365Dictionary<EdmProperty, PropagatorResult> whereClauses = new Dictionary<EdmProperty, PropagatorResult>(); 372PropagatorResult expectedValue = referenceRow.GetMemberValue(propertyOrdinal); 373PropagatorResult newValue = null == current ? null : current.GetMemberValue(propertyOrdinal); 396foreach (KeyValuePair<EdmProperty, PropagatorResult> clause in whereClauses) 411private DbExpression GenerateEqualityExpression(DbExpressionBinding target, EdmProperty property, PropagatorResult value) 435private DbExpression GenerateValueExpression(EdmProperty property, PropagatorResult value) 487private static bool HasFlag(PropagatorResult input, PropagatorFlags flags)
System\Data\Mapping\Update\Internal\UpdateTranslator.cs (11)
386List<KeyValuePair<PropagatorResult, object>> generatedValues = new List<KeyValuePair<PropagatorResult, object>>(); 470private void BackPropagateServerGen(List<KeyValuePair<PropagatorResult, object>> generatedValues) 472foreach (KeyValuePair<PropagatorResult, object> generatedValue in generatedValues) 474PropagatorResult context; 477if (PropagatorResult.NullIdentifier == generatedValue.Key.Identifier || 485if (context.Identifier == PropagatorResult.NullIdentifier) 503private void SetServerGenValue(PropagatorResult context, object value) 505if (context.RecordOrdinal != PropagatorResult.NullOrdinal) 526private object AlignReturnValue(object value, EdmMember member, PropagatorResult context) 912var result = m_recordConverter.ConvertCurrentValuesToPropagatorResult(valueEntry, ModifiedPropertiesBehavior.NoneModified);