Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Common / Utils / Boolean / Literal.cs / 2 / Literal.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Globalization; using System.Collections.ObjectModel; using System.Diagnostics; namespace System.Data.Common.Utils.Boolean { ////// Represents a literal in a normal form expression of the form: /// /// Term /// /// or /// /// !Term /// ///internal sealed class Literal : NormalFormNode , IEquatable > { private readonly TermExpr _term; private readonly bool _isTermPositive; /// /// Initialize a new literal. /// /// Term /// Sign of term internal Literal(TermExprterm, bool isTermPositive) : base(isTermPositive ? (BoolExpr )term : (BoolExpr )new NotExpr (term)) { Debug.Assert(null != term); _term = term; _isTermPositive = isTermPositive; } /// /// Gets literal term. /// internal TermExprTerm { get { return _term; } } /// /// Gets sign of term. /// internal bool IsTermPositive { get { return _isTermPositive; } } ////// Creates a negated version of this literal. /// ///!this internal LiteralMakeNegated() { return IdentifierService .Instance.NegateLiteral(this); } public override string ToString() { return StringUtil.FormatInvariant("{0}{1}", _isTermPositive ? String.Empty : "!", _term); } public override bool Equals(object obj) { Debug.Fail("use typed Equals"); return Equals(obj as Literal ); } public bool Equals(Literal other) { return null != other && other._isTermPositive == _isTermPositive && other._term.Equals(_term); } public override int GetHashCode() { return _term.GetHashCode(); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Text; using System.Globalization; using System.Collections.ObjectModel; using System.Diagnostics; namespace System.Data.Common.Utils.Boolean { ////// Represents a literal in a normal form expression of the form: /// /// Term /// /// or /// /// !Term /// ///internal sealed class Literal : NormalFormNode , IEquatable > { private readonly TermExpr _term; private readonly bool _isTermPositive; /// /// Initialize a new literal. /// /// Term /// Sign of term internal Literal(TermExprterm, bool isTermPositive) : base(isTermPositive ? (BoolExpr )term : (BoolExpr )new NotExpr (term)) { Debug.Assert(null != term); _term = term; _isTermPositive = isTermPositive; } /// /// Gets literal term. /// internal TermExprTerm { get { return _term; } } /// /// Gets sign of term. /// internal bool IsTermPositive { get { return _isTermPositive; } } ////// Creates a negated version of this literal. /// ///!this internal LiteralMakeNegated() { return IdentifierService .Instance.NegateLiteral(this); } public override string ToString() { return StringUtil.FormatInvariant("{0}{1}", _isTermPositive ? String.Empty : "!", _term); } public override bool Equals(object obj) { Debug.Fail("use typed Equals"); return Equals(obj as Literal ); } public bool Equals(Literal other) { return null != other && other._isTermPositive == _isTermPositive && other._term.Equals(_term); } public override int GetHashCode() { return _term.GetHashCode(); } } } // 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
- TableLayoutStyle.cs
- CodeGotoStatement.cs
- AttributeQuery.cs
- WindowsSolidBrush.cs
- DesignerHelpers.cs
- NullableBoolConverter.cs
- GenerateScriptTypeAttribute.cs
- ApplicationBuildProvider.cs
- RoutingEndpointTrait.cs
- KerberosRequestorSecurityToken.cs
- LinkConverter.cs
- TabPage.cs
- EndEvent.cs
- EncodingNLS.cs
- DataGridViewColumnHeaderCell.cs
- SafeCryptContextHandle.cs
- TraceSection.cs
- _NetRes.cs
- WorkflowInstanceSuspendedRecord.cs
- lengthconverter.cs
- XmlSequenceWriter.cs
- ExpressionBuilder.cs
- AutoGeneratedField.cs
- HeaderedContentControl.cs
- WebServiceParameterData.cs
- RowToFieldTransformer.cs
- UseAttributeSetsAction.cs
- LineUtil.cs
- HeaderedContentControl.cs
- Convert.cs
- MenuItem.cs
- DBDataPermissionAttribute.cs
- HttpPostedFile.cs
- SoapTypeAttribute.cs
- MsmqActivation.cs
- OperandQuery.cs
- SQLMoneyStorage.cs
- LoginName.cs
- LocalizableAttribute.cs
- WebPartConnectionsCancelVerb.cs
- _MultipleConnectAsync.cs
- DependencyProperty.cs
- ParentControlDesigner.cs
- ServicePointManager.cs
- Stackframe.cs
- ConnectionPointCookie.cs
- Label.cs
- FieldBuilder.cs
- ButtonColumn.cs
- SizeF.cs
- WebPartHelpVerb.cs
- UserPreferenceChangedEventArgs.cs
- PartitionedStreamMerger.cs
- ConfigurationLoaderException.cs
- FileEnumerator.cs
- RunWorkerCompletedEventArgs.cs
- HttpHandlerActionCollection.cs
- FreeFormPanel.cs
- _Connection.cs
- XPathDescendantIterator.cs
- mil_commands.cs
- TransformedBitmap.cs
- RequiredAttributeAttribute.cs
- CodeIdentifier.cs
- TraceUtility.cs
- FontStyles.cs
- DecoderBestFitFallback.cs
- StorageComplexPropertyMapping.cs
- Size3DConverter.cs
- PersonalizationState.cs
- DictionarySectionHandler.cs
- TraceInternal.cs
- XmlSchemaAnyAttribute.cs
- TextRange.cs
- TextDecorationLocationValidation.cs
- SqlReferenceCollection.cs
- OdbcHandle.cs
- TextTrailingWordEllipsis.cs
- WebReferencesBuildProvider.cs
- SQLDecimal.cs
- StandardOleMarshalObject.cs
- RegisteredDisposeScript.cs
- ColorConverter.cs
- MyContact.cs
- TaiwanCalendar.cs
- RegexRunner.cs
- EraserBehavior.cs
- ProtocolElement.cs
- XmlTypeMapping.cs
- InvokeMemberBinder.cs
- DayRenderEvent.cs
- PropertyMappingExceptionEventArgs.cs
- XmlNamespaceManager.cs
- SerialErrors.cs
- ListDataBindEventArgs.cs
- WebReference.cs
- KeyboardEventArgs.cs
- OperandQuery.cs
- RotationValidation.cs
- __Filters.cs