/
docNemo
/
clothes-graph
Обзор
Документация
Войти
/
docNemo
/
clothes-graph
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
src/ClothesGraph.Model/Formulas/Expression.cs
40 строк
1 KB
docNemo
Фундамент продукта: параметрическое построение выкроек, печать, установщик
08 авг 2026, 22:17
08 авг 2026, 22:17
cd47cce
Код
Авторство
О чём код?
using System.Collections.Generic; using ClothesGraph.Model.Drafting; using ClothesGraph.Model.Measurements; namespace ClothesGraph.Model.Formulas; /// <summary> /// Узел разобранной формулы. /// </summary> /// <remarks> /// Ссылки на мерки и построения хранятся идентификаторами, а не именами. /// Из-за этого переименование мерки не трогает формулы вовсе, а текст формулы /// для показа собирается заново по текущим именам. /// </remarks> public abstract record Expression; public sealed record NumberExpression(double Value) : Expression; /// <summary>Ссылка на мерку: её значение в разрешаемом размере.</summary> public sealed record MeasurementExpression(MeasurementId Measurement) : Expression; /// <summary>Ссылка на измеримое свойство построения: длину, угол.</summary> public sealed record PropertyExpression(NodeId Node, NodeProperty Property) : Expression; public sealed record NegateExpression(Expression Operand) : Expression; public enum BinaryOperator { Add, Subtract, Multiply, Divide, Power } public sealed record BinaryExpression( BinaryOperator Operator, Expression Left, Expression Right) : Expression; public sealed record CallExpression( string Function, IReadOnlyList<Expression> Arguments) : Expression;