Babel.Compiler.TypeElementCreatingVisitor.VisitClass C# (CSharp) Method

VisitClass() public method

public VisitClass ( ClassDefinition cls ) : void
cls ClassDefinition
return void
        public override void VisitClass(ClassDefinition cls)
        {
            ClassDefinition prevClass = currentClass;
            int prevIterCount = iterCount;
            ArrayList prevAncestorMethods = ancestorMethods;
            currentClass = cls;
            iterCount = 0;
            if (cls.Kind == ClassKind.Abstract) {
                ancestorMethods = null;
            }
            else {
                ancestorMethods = new ArrayList();
                foreach (MethodData m in cls.TypeData.AncestorMethods) {
                    if (!m.IsIterCreator)
                        ancestorMethods.Add(m);
                }
            }
            cls.Children.Accept(this);
            if (cls.Kind != ClassKind.Abstract && ancestorMethods.Count > 0) {
                foreach (MethodData method in ancestorMethods) {
                    report.Error(cls.Location,
                                 "no implementation for {0} in {1}",
                                 method,
                                 cls.TypeData.FullName);
                }
            }
            CreateAdapterMethods(cls);
            currentClass = prevClass;
            iterCount = prevIterCount;
            ancestorMethods = prevAncestorMethods;
        }