Ancestry.QueryProcessor.Compile.MethodContext.EmitVersion C# (CSharp) Method

EmitVersion() public method

public EmitVersion ( System.Version version ) : void
version System.Version
return void
        public void EmitVersion(Version version)
        {
            var types = new List<System.Type>() { typeof(int), typeof(int) };
            IL.Emit(OpCodes.Ldc_I4, version.Major);
            IL.Emit(OpCodes.Ldc_I4, version.Minor);
            if (version.Build >= 0)
            {
                IL.Emit(OpCodes.Ldc_I4, version.Build);
                types.Add(typeof(int));
            }
            if (version.Revision >= 0)
            {
                IL.Emit(OpCodes.Ldc_I4, version.Revision);
                types.Add(typeof(int));
            }

            IL.Emit(OpCodes.Newobj, typeof(Version).GetConstructor(types.ToArray()));
        }