The Psyche Project
Classes | Public Member Functions | List of all members
psy::C::ParseOptions Class Reference

The ParseOptions class. More...

#include <ParseOptions.h>

Public Member Functions

const LanguageDialectdialect () const
 
const LanguageExtensionsextensions () const
 
 ParseOptions ()
 
 ParseOptions (LanguageDialect dialect, LanguageExtensions extensions)
 
enum  TreatmentOfIdentifiers : std::uint8_t { TreatmentOfIdentifiers::None, TreatmentOfIdentifiers::Classify }
 The alternatives for TreatmentOfIdentifiers during parse. More...
 
ParseOptionssetTreatmentOfIdentifiers (TreatmentOfIdentifiers treatOfIdent)
 
TreatmentOfIdentifiers treatmentOfIdentifiers () const
 The alternatives for TreatmentOfIdentifiers during parse.
 
enum  TreatmentOfComments : std::uint8_t { TreatmentOfComments::None, TreatmentOfComments::Keep, TreatmentOfComments::KeepDocumentationOnly }
 The alternatives for TreatmentOfComments during parse. More...
 
ParseOptionssetTreatmentOfComments (TreatmentOfComments treatOfComments)
 
TreatmentOfComments treatmentOfComments () const
 The alternatives for TreatmentOfComments during parse.
 
enum  TreatmentOfAmbiguities : std::uint8_t {
  TreatmentOfAmbiguities::None, TreatmentOfAmbiguities::Diagnose, TreatmentOfAmbiguities::DisambiguateAlgorithmically, TreatmentOfAmbiguities::DisambiguateAlgorithmicallyOrHeuristically,
  TreatmentOfAmbiguities::DisambiguateHeuristically
}
 The alternatives for TreatmentOfAmbiguities during parse. More...
 
ParseOptionssetTreatmentOfAmbiguities (TreatmentOfAmbiguities treatOfAmbigs)
 
TreatmentOfAmbiguities treatmentOfAmbiguities () const
 The alternatives for TreatmentOfAmbiguities during parse. More...
 

Detailed Description

The ParseOptions class.

Options to the lexer are also specified through this class.

Member Enumeration Documentation

◆ TreatmentOfAmbiguities

The alternatives for TreatmentOfAmbiguities during parse.

Enumerator
None 

No special treatment (ambiguities are preserved).

Diagnose 

Diagnose ambiguities.

DisambiguateAlgorithmically 

Disambiguate ambiguities algorithmically.

DisambiguateAlgorithmicallyOrHeuristically 

Disambiguate ambiguities algorithmically/heristically.

DisambiguateHeuristically 

Disambiguate ambiguities heuristically.

◆ TreatmentOfComments

enum psy::C::ParseOptions::TreatmentOfComments : std::uint8_t
strong

The alternatives for TreatmentOfComments during parse.

Enumerator
None 

No special treatment.

Keep 

Keep comments.

KeepDocumentationOnly 

Keep documentation comments only.

◆ TreatmentOfIdentifiers

The alternatives for TreatmentOfIdentifiers during parse.

Enumerator
None 

No special treatment.

Classify 

Classify into keywords and non-keywords ("plain identifiers").

Constructor & Destructor Documentation

◆ ParseOptions() [1/2]

ParseOptions::ParseOptions ( )

Create ParseOptions.

◆ ParseOptions() [2/2]

ParseOptions::ParseOptions ( LanguageDialect  dialect,
LanguageExtensions  extensions 
)

Create ParseOptions.

Member Function Documentation

◆ dialect()

const LanguageDialect & ParseOptions::dialect ( ) const

◆ extensions()

const LanguageExtensions & ParseOptions::extensions ( ) const

◆ setTreatmentOfAmbiguities()

ParseOptions & ParseOptions::setTreatmentOfAmbiguities ( TreatmentOfAmbiguities  treatOfAmbigs)

The TreatmentOfAmbiguities of this ParserOptions.

◆ setTreatmentOfComments()

ParseOptions & ParseOptions::setTreatmentOfComments ( TreatmentOfComments  treatOfComments)

The TreatmentOfComments of this ParserOptions.

◆ setTreatmentOfIdentifiers()

ParseOptions & ParseOptions::setTreatmentOfIdentifiers ( TreatmentOfIdentifiers  treatOfIdent)

The TreatmentOfIdentifiers of this ParserOptions.

◆ treatmentOfAmbiguities()

ParseOptions::TreatmentOfAmbiguities ParseOptions::treatmentOfAmbiguities ( ) const

The alternatives for TreatmentOfAmbiguities during parse.


The documentation for this class was generated from the following files: