Files
divkit/client/ios/DivKit/generated_sources/DivBorder.swift
T
feldspar e234cd83fa Added untyped template resolver
commit_hash:299c999f2d6caad74d8568059e890770d7a6b1f2
2026-02-13 12:08:22 +03:00

83 lines
2.8 KiB
Swift

// Generated code. Do not modify.
import Foundation
import Serialization
import VGSL
public final class DivBorder: Sendable {
public let cornerRadius: Expression<Int>? // constraint: number >= 0
public let cornersRadius: DivCornersRadius?
public let hasShadow: Expression<Bool> // default value: false
public let shadow: DivShadow?
public let stroke: DivStroke?
public func resolveCornerRadius(_ resolver: ExpressionResolver) -> Int? {
resolver.resolveNumeric(cornerRadius)
}
public func resolveHasShadow(_ resolver: ExpressionResolver) -> Bool {
resolver.resolveNumeric(hasShadow) ?? false
}
static let cornerRadiusValidator: AnyValueValidator<Int> =
makeValueValidator(valueValidator: { $0 >= 0 })
public convenience init(dictionary: [String: Any], context: ParsingContext) throws {
self.init(
cornerRadius: try dictionary.getOptionalExpressionField("corner_radius", validator: Self.cornerRadiusValidator, context: context),
cornersRadius: try dictionary.getOptionalField("corners_radius", transform: { (dict: [String: Any]) in try DivCornersRadius(dictionary: dict, context: context) }),
hasShadow: try dictionary.getOptionalExpressionField("has_shadow", context: context),
shadow: try dictionary.getOptionalField("shadow", transform: { (dict: [String: Any]) in try DivShadow(dictionary: dict, context: context) }),
stroke: try dictionary.getOptionalField("stroke", transform: { (dict: [String: Any]) in try DivStroke(dictionary: dict, context: context) })
)
}
init(
cornerRadius: Expression<Int>? = nil,
cornersRadius: DivCornersRadius? = nil,
hasShadow: Expression<Bool>? = nil,
shadow: DivShadow? = nil,
stroke: DivStroke? = nil
) {
self.cornerRadius = cornerRadius
self.cornersRadius = cornersRadius
self.hasShadow = hasShadow ?? .value(false)
self.shadow = shadow
self.stroke = stroke
}
}
#if DEBUG
extension DivBorder: Equatable {
public static func ==(lhs: DivBorder, rhs: DivBorder) -> Bool {
guard
lhs.cornerRadius == rhs.cornerRadius,
lhs.cornersRadius == rhs.cornersRadius,
lhs.hasShadow == rhs.hasShadow
else {
return false
}
guard
lhs.shadow == rhs.shadow,
lhs.stroke == rhs.stroke
else {
return false
}
return true
}
}
#endif
extension DivBorder: Serializable {
@_optimize(size)
public func toDictionary() -> [String: ValidSerializationValue] {
var result: [String: ValidSerializationValue] = [:]
result["corner_radius"] = cornerRadius?.toValidSerializationValue()
result["corners_radius"] = cornersRadius?.toDictionary()
result["has_shadow"] = hasShadow.toValidSerializationValue()
result["shadow"] = shadow?.toDictionary()
result["stroke"] = stroke?.toDictionary()
return result
}
}