Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / CqlGeneration / BooleanProjectedSlot.cs / 1305376 / BooleanProjectedSlot.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Mapping.ViewGeneration.Structures; using System.Text; using System.Diagnostics; using System.Data.Common.Utils; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class represents slots for the boolean variables, e.g., _from0, // _from1, etc internal class BooleanProjectedSlot : ProjectedSlot { #region Constructor // effects: Creates a boolean slot for expression that comes from // originalCellNum, i.e., the value of the slot is "expr" and the // name is "_from", e.g., _from2 internal BooleanProjectedSlot(BoolExpression expr, CqlIdentifiers identifiers, int originalCellNum) { m_expr = expr; m_originalCell = new CellIdBoolean(identifiers, originalCellNum); CellIdBoolean boolExpr = expr.AsLiteral as CellIdBoolean; Debug.Assert(boolExpr == null || BoolLiteral.EqualityComparer.Equals(boolExpr, m_originalCell), "Cellid boolean for the slot and cell number disagree"); } #endregion #region Fields private BoolExpression m_expr; // The actual value of the slot - // could be CellIdBoolean! // A boolean corresponding to the original cell number (from0) private CellIdBoolean m_originalCell; #endregion #region Methods internal override StringBuilder AsCql(StringBuilder builder, MemberPath outputMember, string blockAlias, int indentLevel) { if (m_expr.IsTrue || m_expr.IsFalse) { // No Case statement for TRUE and FALSE m_expr.AsCql(builder, blockAlias); } else { builder.Append("CASE WHEN "); m_expr.AsCql(builder, blockAlias); builder.Append(" THEN True ELSE False END"); } return builder; } internal override string CqlFieldAlias(MemberPath outputMember) { // Return _from0, _from1 etc return m_originalCell.SlotName; } internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "<{0}, ", m_originalCell.SlotName); m_expr.ToCompactString(builder); builder.Append('>'); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Mapping.ViewGeneration.Structures; using System.Text; using System.Diagnostics; using System.Data.Common.Utils; namespace System.Data.Mapping.ViewGeneration.CqlGeneration { // This class represents slots for the boolean variables, e.g., _from0, // _from1, etc internal class BooleanProjectedSlot : ProjectedSlot { #region Constructor // effects: Creates a boolean slot for expression that comes from // originalCellNum, i.e., the value of the slot is "expr" and the // name is "_from", e.g., _from2 internal BooleanProjectedSlot(BoolExpression expr, CqlIdentifiers identifiers, int originalCellNum) { m_expr = expr; m_originalCell = new CellIdBoolean(identifiers, originalCellNum); CellIdBoolean boolExpr = expr.AsLiteral as CellIdBoolean; Debug.Assert(boolExpr == null || BoolLiteral.EqualityComparer.Equals(boolExpr, m_originalCell), "Cellid boolean for the slot and cell number disagree"); } #endregion #region Fields private BoolExpression m_expr; // The actual value of the slot - // could be CellIdBoolean! // A boolean corresponding to the original cell number (from0) private CellIdBoolean m_originalCell; #endregion #region Methods internal override StringBuilder AsCql(StringBuilder builder, MemberPath outputMember, string blockAlias, int indentLevel) { if (m_expr.IsTrue || m_expr.IsFalse) { // No Case statement for TRUE and FALSE m_expr.AsCql(builder, blockAlias); } else { builder.Append("CASE WHEN "); m_expr.AsCql(builder, blockAlias); builder.Append(" THEN True ELSE False END"); } return builder; } internal override string CqlFieldAlias(MemberPath outputMember) { // Return _from0, _from1 etc return m_originalCell.SlotName; } internal override void ToCompactString(StringBuilder builder) { StringUtil.FormatStringBuilder(builder, "<{0}, ", m_originalCell.SlotName); m_expr.ToCompactString(builder); builder.Append('>'); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EpmSourceTree.cs
- WindowsEditBoxRange.cs
- _StreamFramer.cs
- DefaultDiscoveryService.cs
- ResourceAssociationSetEnd.cs
- LiteralControl.cs
- DataGridViewCellLinkedList.cs
- TextAnchor.cs
- PreviewKeyDownEventArgs.cs
- ReleaseInstanceMode.cs
- IDQuery.cs
- tibetanshape.cs
- WebScriptClientGenerator.cs
- Invariant.cs
- ParameterEditorUserControl.cs
- _OSSOCK.cs
- ResolveDuplexAsyncResult.cs
- SqlDependencyListener.cs
- Enum.cs
- TextElementEditingBehaviorAttribute.cs
- Symbol.cs
- SaveFileDialog.cs
- XPathNavigatorKeyComparer.cs
- ReadonlyMessageFilter.cs
- DerivedKeySecurityTokenStub.cs
- ImageSource.cs
- SQLDateTimeStorage.cs
- DataGridViewRowPrePaintEventArgs.cs
- NameValueConfigurationElement.cs
- EntityContainer.cs
- FastPropertyAccessor.cs
- CodeLinePragma.cs
- RsaSecurityKey.cs
- ObjectSecurity.cs
- Process.cs
- WarningException.cs
- TextTreeTextElementNode.cs
- LocalizabilityAttribute.cs
- XmlQueryType.cs
- DoubleKeyFrameCollection.cs
- TableLayoutSettings.cs
- SafeSystemMetrics.cs
- XamlFilter.cs
- FamilyMap.cs
- ComboBox.cs
- AspNetSynchronizationContext.cs
- LinearKeyFrames.cs
- ZipIOExtraFieldElement.cs
- TypedTableBase.cs
- StateWorkerRequest.cs
- DataGridColumn.cs
- milrender.cs
- securestring.cs
- CommentEmitter.cs
- EntityContainerAssociationSetEnd.cs
- ChtmlTextWriter.cs
- TimeSpanOrInfiniteValidator.cs
- NavigationWindowAutomationPeer.cs
- ErrorHandler.cs
- PersonalizationProviderHelper.cs
- SafeRightsManagementSessionHandle.cs
- Model3D.cs
- TraceContextEventArgs.cs
- AmbiguousMatchException.cs
- LeafCellTreeNode.cs
- ControlBindingsConverter.cs
- XPathNavigatorReader.cs
- RectAnimationUsingKeyFrames.cs
- ImageSource.cs
- FontFamilyIdentifier.cs
- BitArray.cs
- CodeSpit.cs
- ElasticEase.cs
- Interlocked.cs
- AtlasWeb.Designer.cs
- ProfilePropertySettings.cs
- FontEmbeddingManager.cs
- FacetChecker.cs
- BrushMappingModeValidation.cs
- PreProcessInputEventArgs.cs
- XPathSelfQuery.cs
- ObjectDisposedException.cs
- SQLRoleProvider.cs
- altserialization.cs
- JapaneseLunisolarCalendar.cs
- _Rfc2616CacheValidators.cs
- SafeBitVector32.cs
- SiteMapDataSource.cs
- MeasureItemEvent.cs
- HtmlTernaryTree.cs
- XmlSchemaIdentityConstraint.cs
- InfoCardService.cs
- Regex.cs
- MailAddress.cs
- SurrogateDataContract.cs
- ToolStripRendererSwitcher.cs
- EventItfInfo.cs
- ValidationSummary.cs
- ContentElement.cs
- SqlTypeSystemProvider.cs