/Primula

This is a set of C language parsers. A some subset of C++ is also supported.

Primary LanguageC++Apache License 2.0Apache-2.0

Primula

Primula

This is a set of C language parsers. A some subset of C++ is also supported.

Contents

  • The folder ./include holds common header files.

  • The folder ./lexical_parser holds a source code of combined preprocessor and lexical parser of C files and perhaps some of C++ files.

  • The folder ./syntax_parser holds a source code of a syntax parser.

  • The folder ./codegen keeps a builder of C source code from syntax tree.

  • The folder ./codegen/Pascal keeps a translator of the Primula syntax tree to Pascal program. (Under development)

Each subfolder has it's own README.md file with description and hints.

Support

Please use the Issues section for bug reports and feature requests.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Copyright, License

Primula is copyright (c) 2019 The Primula Authors.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

You may also see the license in the file LICENSE in the source distribution.

Resources

Primula Home Site (in Russian)