Exemplo n.º 1
0
        internal static void InitializeWellKnownMembers()
        {
            var memberSymbols = new MemberSymbol[MemberNames.Length];

            lock (MemberNames)
            {
                foreach (var m in (WellKnownMembers[])Enum.GetValues(typeof(WellKnownMembers)))
                {
                    var names    = MemberNames[(int)m];
                    var flatname = names.Replace("global::", "").Replace('.', '_').Replace("`", "_T").Replace("$", "").Replace("@", "").Split('|', '(').First();
                    Debug.Assert(m.ToString().StartsWith(flatname));
                    memberSymbols[(int)m] = FindMember(names);
                    if (names.IndexOf("VFP") == -1)
                    {
                        Debug.Assert(memberSymbols[(int)m] != null);
                    }
                    else if (XSharp.RuntimeState.Dialect == XSharpDialect.FoxPro)
                    {
                        Debug.Assert(memberSymbols[(int)m] != null);
                    }
                }
            }
            Interlocked.CompareExchange(ref WellKnownMemberSymbols, memberSymbols, null);
        }
Exemplo n.º 2
0
 internal static OverloadResult Create(MemberSymbol symbol, ParameterListSymbol paramList, int nFixedArgs, int nVarArgs, int nMissingArgs)
 {
     return(new OverloadResult(symbol, paramList, nFixedArgs, nVarArgs, nMissingArgs));
 }