Example #1
0
        public void AddProperty(Node node, AnalysisUnit unit, string name, AnalysisValue value)
        {
            var desc = GetDescriptor(name);

            var descValue = value.Get(node, unit, "value", false);

            if (descValue.Count > 0)
            {
                if (desc.Values == null)
                {
                    desc.Values = new VariableDef();
                }
                desc.Values.AddTypes(unit, descValue, declaringScope: DeclaringModule);
            }

            var get = value.Get(node, unit, "get", false);

            if (get.Count > 0)
            {
                if (desc.Getter == null)
                {
                    desc.Getter = new VariableDef();
                }
                desc.Getter.AddTypes(unit, get, declaringScope: DeclaringModule);
            }

            var set = value.Get(node, unit, "set", false);

            if (set.Count > 0)
            {
                if (desc.Setter == null)
                {
                    desc.Setter = new VariableDef();
                }
                desc.Setter.AddTypes(unit, set, declaringScope: DeclaringModule);
            }
        }