![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
Model Parser.
Definition at line 3741 of file constraint_solveri.h.
#include <constraint_solveri.h>
Public Member Functions | |
| ModelParser () | |
| -------— ModelParser ------— | |
| ~ModelParser () override | |
| void | BeginVisitModel (const std::string &solver_name) override |
| Header/footers. | |
| void | EndVisitModel (const std::string &solver_name) override |
| void | BeginVisitConstraint (const std::string &type_name, const Constraint *constraint) override |
| void | EndVisitConstraint (const std::string &type_name, const Constraint *constraint) override |
| void | BeginVisitIntegerExpression (const std::string &type_name, const IntExpr *expr) override |
| void | EndVisitIntegerExpression (const std::string &type_name, const IntExpr *expr) override |
| void | VisitIntegerVariable (const IntVar *variable, IntExpr *delegate) override |
| void | VisitIntegerVariable (const IntVar *variable, const std::string &operation, int64_t value, IntVar *delegate) override |
| void | VisitIntervalVariable (const IntervalVar *variable, const std::string &operation, int64_t value, IntervalVar *delegate) override |
| void | VisitSequenceVariable (const SequenceVar *variable) override |
| void | VisitIntegerArgument (const std::string &arg_name, int64_t value) override |
| Integer arguments. | |
| void | VisitIntegerArrayArgument (const std::string &arg_name, const std::vector< int64_t > &values) override |
| void | VisitIntegerMatrixArgument (const std::string &arg_name, const IntTupleSet &values) override |
| void | VisitIntegerExpressionArgument (const std::string &arg_name, IntExpr *argument) override |
| Variables. | |
| void | VisitIntegerVariableArrayArgument (const std::string &arg_name, const std::vector< IntVar * > &arguments) override |
| void | VisitIntervalArgument (const std::string &arg_name, IntervalVar *argument) override |
| Visit interval argument. | |
| void | VisitIntervalArrayArgument (const std::string &arg_name, const std::vector< IntervalVar * > &arguments) override |
| void | VisitSequenceArgument (const std::string &arg_name, SequenceVar *argument) override |
| Visit sequence argument. | |
| void | VisitSequenceArrayArgument (const std::string &arg_name, const std::vector< SequenceVar * > &arguments) override |
| Public Member Functions inherited from operations_research::ModelVisitor | |
| ~ModelVisitor () override | |
| Methods. | |
| virtual void | BeginVisitExtension (const std::string &type) |
| virtual void | EndVisitExtension (const std::string &type) |
| virtual void | VisitIntegerVariableEvaluatorArgument (const std::string &arg_name, const Solver::Int64ToIntVar &arguments) |
| Helpers. | |
| void | VisitInt64ToBoolExtension (Solver::IndexFilter1 filter, int64_t index_min, int64_t index_max) |
| --— Helpers --— | |
| void | VisitInt64ToInt64Extension (const Solver::IndexEvaluator1 &eval, int64_t index_min, int64_t index_max) |
| void | VisitInt64ToInt64AsArray (const Solver::IndexEvaluator1 &eval, const std::string &arg_name, int64_t index_max) |
| Expands function as array when index min is 0. | |
| Public Member Functions inherited from operations_research::BaseObject | |
| BaseObject () | |
| BaseObject (const BaseObject &)=delete | |
| This type is neither copyable nor movable. | |
| BaseObject & | operator= (const BaseObject &)=delete |
| virtual | ~BaseObject ()=default |
| virtual std::string | DebugString () const |
Protected Member Functions | |
| void | PushArgumentHolder () |
| void | PopArgumentHolder () |
| ArgumentHolder * | Top () const |
Additional Inherited Members | |
| Static Public Attributes inherited from operations_research::ModelVisitor | |
| static const char | kAbs [] = "Abs" |
| Constraint and Expression types. | |
| static const char | kAbsEqual [] = "AbsEqual" |
| static const char | kAllDifferent [] = "AllDifferent" |
| static const char | kAllowedAssignments [] = "AllowedAssignments" |
| static const char | kAtMost [] = "AtMost" |
| static const char | kIndexOf [] = "IndexOf" |
| static const char | kBetween [] = "Between" |
| static const char | kConditionalExpr [] = "ConditionalExpr" |
| static const char | kCircuit [] = "Circuit" |
| static const char | kConvexPiecewise [] = "ConvexPiecewise" |
| static const char | kCountEqual [] = "CountEqual" |
| static const char | kCover [] = "Cover" |
| static const char | kCumulative [] = "Cumulative" |
| static const char | kDeviation [] = "Deviation" |
| static const char | kDifference [] = "Difference" |
| static const char | kDisjunctive [] = "Disjunctive" |
| static const char | kDistribute [] = "Distribute" |
| static const char | kDivide [] = "Divide" |
| static const char | kDurationExpr [] = "DurationExpression" |
| static const char | kElement [] = "Element" |
| static const char | kLightElementEqual [] = "LightElementEqual" |
| static const char | kElementEqual [] = "ElementEqual" |
| static const char | kEndExpr [] = "EndExpression" |
| static const char | kEquality [] = "Equal" |
| static const char | kFalseConstraint [] = "FalseConstraint" |
| static const char | kGlobalCardinality [] = "GlobalCardinality" |
| static const char | kGreater [] = "Greater" |
| static const char | kGreaterOrEqual [] = "GreaterOrEqual" |
| static const char | kIntegerVariable [] = "IntegerVariable" |
| static const char | kIntervalBinaryRelation [] = "IntervalBinaryRelation" |
| static const char | kIntervalDisjunction [] = "IntervalDisjunction" |
| static const char | kIntervalUnaryRelation [] = "IntervalUnaryRelation" |
| static const char | kIntervalVariable [] = "IntervalVariable" |
| static const char | kInversePermutation [] = "InversePermutation" |
| static const char | kIsBetween [] = "IsBetween;" |
| static const char | kIsDifferent [] = "IsDifferent" |
| static const char | kIsEqual [] = "IsEqual" |
| static const char | kIsGreater [] = "IsGreater" |
| static const char | kIsGreaterOrEqual [] = "IsGreaterOrEqual" |
| static const char | kIsLess [] = "IsLess" |
| static const char | kIsLessOrEqual [] = "IsLessOrEqual" |
| static const char | kIsMember [] = "IsMember;" |
| static const char | kLess [] = "Less" |
| static const char | kLessOrEqual [] = "LessOrEqual" |
| static const char | kLexLess [] = "LexLess" |
| static const char | kLinkExprVar [] = "CastExpressionIntoVariable" |
| static const char | kMapDomain [] = "MapDomain" |
| static const char | kMax [] = "Max" |
| static const char | kMaxEqual [] = "MaxEqual" |
| static const char | kMember [] = "Member" |
| static const char | kMin [] = "Min" |
| static const char | kMinEqual [] = "MinEqual" |
| static const char | kModulo [] = "Modulo" |
| static const char | kNoCycle [] = "NoCycle" |
| static const char | kNonEqual [] = "NonEqual" |
| static const char | kNotBetween [] = "NotBetween" |
| static const char | kNotMember [] = "NotMember" |
| static const char | kNullIntersect [] = "NullIntersect" |
| static const char | kOpposite [] = "Opposite" |
| static const char | kPack [] = "Pack" |
| static const char | kPathCumul [] = "PathCumul" |
| static const char | kDelayedPathCumul [] = "DelayedPathCumul" |
| static const char | kPerformedExpr [] = "PerformedExpression" |
| static const char | kPower [] = "Power" |
| static const char | kProduct [] = "Product" |
| static const char | kScalProd [] = "ScalarProduct" |
| static const char | kScalProdEqual [] = "ScalarProductEqual" |
| static const char | kScalProdGreaterOrEqual [] |
| static const char | kScalProdLessOrEqual [] = "ScalarProductLessOrEqual" |
| static const char | kSemiContinuous [] = "SemiContinuous" |
| static const char | kSequenceVariable [] = "SequenceVariable" |
| static const char | kSortingConstraint [] = "SortingConstraint" |
| static const char | kSquare [] = "Square" |
| static const char | kStartExpr [] = "StartExpression" |
| static const char | kSum [] = "Sum" |
| static const char | kSumEqual [] = "SumEqual" |
| static const char | kSumGreaterOrEqual [] = "SumGreaterOrEqual" |
| static const char | kSumLessOrEqual [] = "SumLessOrEqual" |
| static const char | kTrace [] = "Trace" |
| static const char | kTransition [] = "Transition" |
| static const char | kTrueConstraint [] = "TrueConstraint" |
| static const char | kVarBoundWatcher [] = "VarBoundWatcher" |
| static const char | kVarValueWatcher [] = "VarValueWatcher" |
| static const char | kCountAssignedItemsExtension [] = "CountAssignedItems" |
| Extension names: | |
| static const char | kCountUsedBinsExtension [] = "CountUsedBins" |
| static const char | kInt64ToBoolExtension [] = "Int64ToBoolFunction" |
| static const char | kInt64ToInt64Extension [] = "Int64ToInt64Function" |
| static const char | kObjectiveExtension [] = "Objective" |
| static const char | kSearchLimitExtension [] = "SearchLimit" |
| static const char | kUsageEqualVariableExtension [] = "UsageEqualVariable" |
| static const char | kUsageLessConstantExtension [] = "UsageLessConstant" |
| static const char | kVariableGroupExtension [] = "VariableGroup" |
| static const char | kVariableUsageLessConstantExtension [] |
| static const char | kWeightedSumOfAssignedEqualVariableExtension [] |
| static const char | kActiveArgument [] = "active" |
| argument names: | |
| static const char | kAssumePathsArgument [] = "assume_paths" |
| static const char | kBranchesLimitArgument [] = "branches_limit" |
| static const char | kCapacityArgument [] = "capacity" |
| static const char | kCardsArgument [] = "cardinalities" |
| static const char | kCoefficientsArgument [] = "coefficients" |
| static const char | kCountArgument [] = "count" |
| static const char | kCumulativeArgument [] = "cumulative" |
| static const char | kCumulsArgument [] = "cumuls" |
| static const char | kDemandsArgument [] = "demands" |
| static const char | kDurationMaxArgument [] = "duration_max" |
| static const char | kDurationMinArgument [] = "duration_min" |
| static const char | kEarlyCostArgument [] = "early_cost" |
| static const char | kEarlyDateArgument [] = "early_date" |
| static const char | kEndMaxArgument [] = "end_max" |
| static const char | kEndMinArgument [] = "end_min" |
| static const char | kEndsArgument [] = "ends" |
| static const char | kExpressionArgument [] = "expression" |
| static const char | kFailuresLimitArgument [] = "failures_limit" |
| static const char | kFinalStatesArgument [] = "final_states" |
| static const char | kFixedChargeArgument [] = "fixed_charge" |
| static const char | kIndex2Argument [] = "index2" |
| static const char | kIndex3Argument [] = "index3" |
| static const char | kIndexArgument [] = "index" |
| static const char | kInitialState [] = "initial_state" |
| static const char | kIntervalArgument [] = "interval" |
| static const char | kIntervalsArgument [] = "intervals" |
| static const char | kLateCostArgument [] = "late_cost" |
| static const char | kLateDateArgument [] = "late_date" |
| static const char | kLeftArgument [] = "left" |
| static const char | kMaxArgument [] = "max_value" |
| static const char | kMaximizeArgument [] = "maximize" |
| static const char | kMinArgument [] = "min_value" |
| static const char | kModuloArgument [] = "modulo" |
| static const char | kNextsArgument [] = "nexts" |
| static const char | kOptionalArgument [] = "optional" |
| static const char | kPartialArgument [] = "partial" |
| static const char | kPositionXArgument [] = "position_x" |
| static const char | kPositionYArgument [] = "position_y" |
| static const char | kRangeArgument [] = "range" |
| static const char | kRelationArgument [] = "relation" |
| static const char | kRightArgument [] = "right" |
| static const char | kSequenceArgument [] = "sequence" |
| static const char | kSequencesArgument [] = "sequences" |
| static const char | kSizeArgument [] = "size" |
| static const char | kSizeXArgument [] = "size_x" |
| static const char | kSizeYArgument [] = "size_y" |
| static const char | kSmartTimeCheckArgument [] = "smart_time_check" |
| static const char | kSolutionLimitArgument [] = "solutions_limit" |
| static const char | kStartMaxArgument [] = "start_max" |
| static const char | kStartMinArgument [] = "start_min" |
| static const char | kStartsArgument [] = "starts" |
| static const char | kStepArgument [] = "step" |
| static const char | kTargetArgument [] = "target_variable" |
| static const char | kTimeLimitArgument [] = "time_limit" |
| static const char | kTransitsArgument [] = "transits" |
| static const char | kTuplesArgument [] = "tuples" |
| static const char | kValueArgument [] = "value" |
| static const char | kValuesArgument [] = "values" |
| static const char | kVariableArgument [] = "variable" |
| static const char | kVarsArgument [] = "variables" |
| static const char | kEvaluatorArgument [] = "evaluator" |
| static const char | kMirrorOperation [] = "mirror" |
| Operations. | |
| static const char | kRelaxedMaxOperation [] = "relaxed_max" |
| static const char | kRelaxedMinOperation [] = "relaxed_min" |
| static const char | kSumOperation [] = "sum" |
| static const char | kDifferenceOperation [] = "difference" |
| static const char | kProductOperation [] = "product" |
| static const char | kStartSyncOnStartOperation [] = "start_synced_on_start" |
| static const char | kStartSyncOnEndOperation [] = "start_synced_on_end" |
| static const char | kTraceOperation [] = "trace" |
| operations_research::ModelParser::ModelParser | ( | ) |
-------— ModelParser ------—
Definition at line 124 of file visitor.cc.
|
override |
Definition at line 126 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 136 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 147 of file visitor.cc.
|
overridevirtual |
Header/footers.
Reimplemented from operations_research::ModelVisitor.
Definition at line 128 of file visitor.cc.
|
overridevirtual |
Constraint parsing is usually done here.
Reimplemented from operations_research::ModelVisitor.
Definition at line 141 of file visitor.cc.
|
overridevirtual |
Expression parsing is usually done here.
Reimplemented from operations_research::ModelVisitor.
Definition at line 152 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 132 of file visitor.cc.
|
protected |
Definition at line 249 of file visitor.cc.
|
protected |
Definition at line 245 of file visitor.cc.
|
protected |
Definition at line 255 of file visitor.cc.
|
overridevirtual |
Integer arguments.
Reimplemented from operations_research::ModelVisitor.
Definition at line 185 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 190 of file visitor.cc.
|
overridevirtual |
Variables.
Reimplemented from operations_research::ModelVisitor.
Definition at line 201 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 195 of file visitor.cc.
|
overridevirtual |
Usual place for parsing.
Reimplemented from operations_research::ModelVisitor.
Definition at line 163 of file visitor.cc.
|
overridevirtual |
Usual place for parsing.
Reimplemented from operations_research::ModelVisitor.
Definition at line 158 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 207 of file visitor.cc.
|
overridevirtual |
Visit interval argument.
Reimplemented from operations_research::ModelVisitor.
Definition at line 216 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 222 of file visitor.cc.
|
overridevirtual |
Usual place for parsing.
Reimplemented from operations_research::ModelVisitor.
Definition at line 170 of file visitor.cc.
|
overridevirtual |
Visit sequence argument.
Reimplemented from operations_research::ModelVisitor.
Definition at line 231 of file visitor.cc.
|
overridevirtual |
Reimplemented from operations_research::ModelVisitor.
Definition at line 237 of file visitor.cc.
|
overridevirtual |
Usual place for parsing.
Reimplemented from operations_research::ModelVisitor.
Definition at line 180 of file visitor.cc.