Antmicro.Migrant.Generators.WriterGenerationContext.PushObjectWriterOntoStack C# (CSharp) Method

PushObjectWriterOntoStack() public method

public PushObjectWriterOntoStack ( ) : void
return void
        public void PushObjectWriterOntoStack()
        {
            CheckAndEmit(objectWriterArgument);
        }

Usage Example

Beispiel #1
0
        private static void GenerateInvokeCallbacksAndExecute(WriterGenerationContext context, bool generatePreSerializationCallback, bool generatePostSerializationCallback, Variable valueLocal, Type type, Action <WriterGenerationContext> bodyBuilder)
        {
            if (generatePreSerializationCallback || generatePostSerializationCallback)
            {
                context.Generator.BeginExceptionBlock();
            }

            if (generatePreSerializationCallback)
            {
                context.PushObjectWriterOntoStack();
                context.Generator.PushFieldValueOntoStack <ObjectWriter, Action <object> >(x => x.preSerializationCallback);
                context.Generator.PushVariableOntoStack(valueLocal);
                context.Generator.Call <Action <object> >(x => x.Invoke(null));
            }

            bodyBuilder(context);

            if (generatePreSerializationCallback || generatePostSerializationCallback)
            {
                context.Generator.BeginFinallyBlock();
            }

            if (generatePostSerializationCallback)
            {
                context.PushObjectWriterOntoStack();
                context.Generator.PushFieldValueOntoStack <ObjectWriter, Action <object> >(x => x.postSerializationCallback);
                context.Generator.PushVariableOntoStack(valueLocal);
                context.Generator.Call <Action <object> >(x => x.Invoke(null));
            }

            if (generatePreSerializationCallback || generatePostSerializationCallback)
            {
                context.Generator.EndExceptionBlock();
            }
        }
All Usage Examples Of Antmicro.Migrant.Generators.WriterGenerationContext::PushObjectWriterOntoStack