Z3
src/api/dotnet/Version.cs
Go to the documentation of this file.
00001 /*++
00002 Copyright (c) 2012 Microsoft Corporation
00003 
00004 Module Name:
00005 
00006     Version.cs
00007 
00008 Abstract:
00009 
00010     Z3 Managed API: Version information
00011 
00012 Author:
00013 
00014     Christoph Wintersteiger (cwinter) 2012-03-16
00015 
00016 Notes:
00017     
00018 --*/
00019 
00020 using System;
00021 using System.Diagnostics.Contracts;
00022 
00023 namespace Microsoft.Z3
00024 {
00029     [ContractVerification(true)]
00030     public static class Version
00031     {
00032         static Version() { }
00033 
00037         public static uint Major
00038         {
00039             get
00040             {
00041                 uint major = 0, minor = 0, build = 0, revision = 0;
00042                 Native.Z3_get_version(ref major, ref minor, ref build, ref revision);
00043                 return major;
00044             }
00045         }
00046 
00050         public static uint Minor
00051         {
00052             get
00053             {
00054                 uint major = 0, minor = 0, build = 0, revision = 0;
00055                 Native.Z3_get_version(ref major, ref minor, ref build, ref revision);
00056                 return minor;
00057             }
00058         }
00059 
00063         public static uint Build
00064         {
00065             get
00066             {
00067                 uint major = 0, minor = 0, build = 0, revision = 0;
00068                 Native.Z3_get_version(ref major, ref minor, ref build, ref revision);
00069                 return build;
00070             }
00071         }
00072 
00076         public static uint Revision
00077         {
00078             get
00079             {
00080                 uint major = 0, minor = 0, build = 0, revision = 0;
00081                 Native.Z3_get_version(ref major, ref minor, ref build, ref revision);
00082                 return revision;
00083             }
00084         }
00085 
00089         new public static string ToString()
00090         {
00091             Contract.Ensures(Contract.Result<string>() != null);
00092 
00093             uint major = 0, minor = 0, build = 0, revision = 0;
00094             Native.Z3_get_version(ref major, ref minor, ref build, ref revision);
00095             return major.ToString() + "." + minor.ToString() + "." + build.ToString() + "." + revision.ToString();
00096         }
00097     }
00098 }
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines