Blamite.Blam.Scripting.Compiler.ScriptCompiler.CreateFunctionCall C# (CSharp) Метод

CreateFunctionCall() приватный Метод

private CreateFunctionCall ( FunctionInfo info, ushort returnTypeOpcode, uint textPosition, short lineNumber ) : void
info FunctionInfo
returnTypeOpcode ushort
textPosition uint
lineNumber short
Результат void
        private void CreateFunctionCall(FunctionInfo info, ushort returnTypeOpcode, uint textPosition, short lineNumber)
        {
            var callExpression = new ScriptExpression
            {
                Index = _currentIndex,
                Opcode = info.Opcode,
                ReturnType = returnTypeOpcode,
                Type = ScriptExpressionType.Group,
                Next = DatumIndex.Null,
                StringOffset = textPosition,
                Value = new LongExpressionValue(_currentIndex.Next),
                LineNumber = lineNumber
            };
            OpenDatumAddExpressionIncrement(callExpression);

            var nameExpression = new ScriptExpression
            {
                Index = _currentIndex,
                Opcode = info.Opcode,
                ReturnType = _opcodes.GetTypeInfo("function_name").Opcode,
                Type = ScriptExpressionType.Expression,
                Next = DatumIndex.Null,
                StringOffset = _strings.Cache(info.Name),
                Value = new LongExpressionValue(0),
                LineNumber = lineNumber
            };
            OpenDatumAddExpressionIncrement(nameExpression);
        }