tars_filter.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. /**
  2. * Tencent is pleased to support the open source community by making Tars available.
  3. *
  4. * Copyright (C) 2016THL A29 Limited, a Tencent company. All rights reserved.
  5. *
  6. * Licensed under the BSD 3-Clause License (the "License"); you may not use this file except
  7. * in compliance with the License. You may obtain a copy of the License at
  8. *
  9. * https://opensource.org/licenses/BSD-3-Clause
  10. *
  11. * Unless required by applicable law or agreed to in writing, software distributed
  12. * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
  13. * CONDITIONS OF ANY KIND, either express or implied. See the License for the
  14. * specific language governing permissions and limitations under the License.
  15. */
  16. #ifndef TARS_FILTER_H_WILEY
  17. #define TARS_FILTER_H_WILEY
  18. #include "parse.h"
  19. #include <map>
  20. class TarsFilter {
  21. public:
  22. TarsFilter();
  23. void filterStructs(const std::map<std::string, StructPtr>& orignalMap
  24. , std::map<std::string, StructPtr>& resultMap) const;
  25. void filterEnums(const std::map<std::string, EnumPtr>& orignalMap
  26. , std::map<std::string, EnumPtr>& resultMap) const;
  27. private:
  28. void addSid(const std::string& sid);
  29. std::map<std::string, bool> mFilterTarsSidMap;
  30. };
  31. #endif /* TARS_FILTER_H_ */