示例#1
0
 public void Visit(NParameter node)
 {
     Console.WriteLine($"+++++++++++++++ NParameter ++++++++++++++++");
     if (pasones == 1)
     {
         Sharmuta sha = new Sharmuta(node.AnchorToken.Lexeme, true, variablePosition);
         Table[nombreFuncion].locTable[node.AnchorToken.Lexeme] = sha;
         variablePosition++;
     }
     VisitChildren(node);
 }
示例#2
0
        /// <summary>
        /// Adds the parameter.
        /// </summary>
        /// <param name="method">The method.</param>
        /// <param name="parameterDef">The parameter def.</param>
        private void AddParameter(NMethod method, ParameterDefinition parameterDef)
        {
            var parameter = new NParameter {
                Name = parameterDef.Name
            };

            parameter.FullName      = parameter.Name;
            parameter.IsIn          = parameterDef.IsIn;
            parameter.IsOut         = parameterDef.IsOut;
            parameter.IsOptional    = parameterDef.IsOptional;
            parameter.IsReturnValue = parameterDef.IsReturnValue;
            parameter.ParameterType = GetTypeReference(parameterDef.ParameterType);
            method.AddParameter(parameter);
        }
 public string Visit(NParameter nParameter)
 {
     return("int64 '" + nParameter.AnchorToken.Lexeme + "'");
 }