Sha256: 95a4eff01baabf5354ea9241572cb7f30253409417186e7d2d8a7b1e156d291f

Contents?: true

Size: 1.2 KB

Versions: 5

Compression:

Stored size: 1.2 KB

Contents

//
//  refract/PrintVisitor.h
//  librefract
//
//  Created by Vilibald WanĨa on 09/11/15.
//  Copyright (c) 2015 Apiary Inc. All rights reserved.
//

#ifndef REFRACT_PRINTVISITOR_H
#define REFRACT_PRINTVISITOR_H

#include <string>
#include <ostream>

#include "ElementFwd.h"

namespace refract
{

    class PrintVisitor 
    {
        int indent;
        std::ostream& os;

        void indentOS(int ind);
        void printMeta(const IElement& e);
        void printAttr(const IElement& e);

    public:
        PrintVisitor();
        PrintVisitor(int indentation, std::ostream& os);

        void operator()(const IElement& e);
        void operator()(const MemberElement& e);
        void operator()(const ObjectElement& e);
        void operator()(const ArrayElement& e);
        void operator()(const EnumElement& e);
        void operator()(const NullElement& e);
        void operator()(const StringElement& e);
        void operator()(const NumberElement& e);
        void operator()(const BooleanElement& e);
        void operator()(const ExtendElement& e);
        void operator()(const OptionElement& e);
        void operator()(const SelectElement& e);

        static void Visit(const IElement& e);
    };
}

#endif

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lounge_lizard-0.1.4 ext/drafter/src/refract/PrintVisitor.h
lounge_lizard-0.1.3 ext/drafter/src/refract/PrintVisitor.h
lounge_lizard-0.1.2 ext/drafter/src/refract/PrintVisitor.h
lounge_lizard-0.1.1 ext/drafter/src/refract/PrintVisitor.h
lounge_lizard-0.1.0 ext/drafter/src/refract/PrintVisitor.h