예제 #1
0
        public override void VisitVarDecl(VarDecl decl)
        {
            if (!decl.IsExternC)
            {
                return;
            }
            if (!decl.PresumedLoc.FileName.Contains(".framework"))
            {
                return;
            }

            if (!decl.IsAvailable())
            {
                return;
            }

            var framework = Helpers.GetFramework(decl);

            if (framework == null)
            {
                return;
            }

            var name = decl.ToString();

            if (!fields.TryGetValue(name, out var mr))
            {
                Log.On(framework).Add($"!missing-field! {name} not bound");
            }
            else
            {
                fields.Remove(name);
            }
        }
예제 #2
0
        public override void VisitVarDecl(VarDecl decl)
        {
            if (!decl.IsExternC)
            {
                return;
            }
            if (!decl.PresumedLoc.FileName.Contains(".framework"))
            {
                return;
            }

            if (!decl.IsAvailable())
            {
                return;
            }

            var             name = decl.ToString();
            MemberReference mr;

            if (!fields.TryGetValue(name, out mr))
            {
                Console.WriteLine("!missing-field! {0} not bound", name);
                return;
            }
            else
            {
                fields.Remove(name);
            }
        }