Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Common / Utils / Boolean / Literal.cs / 1305376 / 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
- RtType.cs
- DocumentsTrace.cs
- WebPartDisplayModeEventArgs.cs
- SqlBinder.cs
- ObservableCollectionDefaultValueFactory.cs
- SaveFileDialog.cs
- GeometryModel3D.cs
- BindingUtils.cs
- ControlParameter.cs
- HandleCollector.cs
- WebContext.cs
- InstanceContext.cs
- webproxy.cs
- DocumentationServerProtocol.cs
- DataGridView.cs
- FrugalMap.cs
- ToolStripContentPanel.cs
- SqlBulkCopyColumnMappingCollection.cs
- ColumnBinding.cs
- XmlUnspecifiedAttribute.cs
- WFItemsToSpacerVisibility.cs
- ViewManager.cs
- RoleBoolean.cs
- PassportPrincipal.cs
- InvalidEnumArgumentException.cs
- PropertyAccessVisitor.cs
- TemplateXamlTreeBuilder.cs
- HttpCacheVary.cs
- SelectionWordBreaker.cs
- sortedlist.cs
- NullableConverter.cs
- PropertyPathWorker.cs
- XmlArrayItemAttributes.cs
- Quaternion.cs
- PeerResolverElement.cs
- IndentedWriter.cs
- SelectionListComponentEditor.cs
- OdbcConnectionStringbuilder.cs
- BamlLocalizableResourceKey.cs
- documentsequencetextpointer.cs
- SpeechSynthesizer.cs
- SqlCacheDependencyDatabaseCollection.cs
- XamlStyleSerializer.cs
- SymmetricSecurityProtocol.cs
- ProcessingInstructionAction.cs
- GridViewUpdateEventArgs.cs
- StreamUpdate.cs
- TraceSection.cs
- HtmlInputCheckBox.cs
- RightsManagementEncryptionTransform.cs
- StreamGeometry.cs
- TreeNodeBindingDepthConverter.cs
- ThreadStateException.cs
- Parameter.cs
- NavigationEventArgs.cs
- HttpClientCertificate.cs
- SerializationFieldInfo.cs
- WebPartExportVerb.cs
- linebase.cs
- MemberDomainMap.cs
- DataListItemCollection.cs
- Compensate.cs
- FixedSOMTable.cs
- DiagnosticStrings.cs
- WpfMemberInvoker.cs
- CompiledRegexRunner.cs
- ServiceManager.cs
- EventProxy.cs
- AttributeEmitter.cs
- FileDataSourceCache.cs
- EntityCommandExecutionException.cs
- GroupItemAutomationPeer.cs
- ListView.cs
- OciLobLocator.cs
- WebServiceReceiveDesigner.cs
- BindingList.cs
- XmlWrappingReader.cs
- CancellationTokenSource.cs
- LoadMessageLogger.cs
- GeneralTransformGroup.cs
- LicenseManager.cs
- CheckBox.cs
- TreeNodeBinding.cs
- WsatTransactionFormatter.cs
- PrintPreviewGraphics.cs
- Color.cs
- MethodBody.cs
- HostingEnvironmentSection.cs
- PropertyTabChangedEvent.cs
- ProfileParameter.cs
- LocalizedNameDescriptionPair.cs
- Point3DCollection.cs
- AttributeEmitter.cs
- StretchValidation.cs
- Pair.cs
- NetWebProxyFinder.cs
- SHA512CryptoServiceProvider.cs
- HTMLTagNameToTypeMapper.cs
- DataBindingCollection.cs
- StandardToolWindows.cs