Build Information
Successful build of Shaft, reference main (ea5299), with Swift 6.3 for macOS (SPM) on 17 Apr 2026 08:08:00 UTC.
Swift 6 data race errors: 0
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.4.0.app xcrun swift build --arch arm64Build Log
48 | ///
49 + /// * ``Locale/fromSubtags``, which also allows a ``scriptCode`` to be
50 | /// specified.
51 | public init(
warning: 'fromSubtags' doesn't exist at '/Shaft/Locale'
--> Sources/Shaft/Core/Locale.swift:115:21-115:32
113 | /// See also:
114 | ///
115 + /// * ``Locale/fromSubtags``, which describes the conventions for creating
116 | /// ``Locale`` objects.
117 | public var languageCode: String {
warning: 'fromSubtags' doesn't exist at '/Shaft/Locale'
--> Sources/Shaft/Core/Locale.swift:216:21-216:32
214 | /// See also:
215 | ///
216 + /// * ``Locale/fromSubtags``, which describes the conventions for creating
217 | /// ``Locale`` objects.
218 | public let scriptCode: String?
warning: 'fromSubtags' doesn't exist at '/Shaft/Locale'
--> Sources/Shaft/Core/Locale.swift:237:21-237:32
235 | /// See also:
236 | ///
237 + /// * ``Locale/fromSubtags``, which describes the conventions for creating
238 | /// ``Locale`` objects.
239 | public var countryCode: String? {
warning: 'defaultTargetPlatform' doesn't exist at '/Shaft/TargetPlatform'
--> Sources/Shaft/Core/TargetPlatform.swift:11:11-11:32
9 | /// The platform that user interaction should adapt to target.
10 | ///
11 + /// The ``defaultTargetPlatform`` getter returns the current platform.
12 | ///
13 | /// When using the "flutter run" command, the "o" key will toggle between
warning: 'debugDefaultTargetPlatformOverride' doesn't exist at '/Shaft/TargetPlatform'
--> Sources/Shaft/Core/TargetPlatform.swift:14:41-14:75
12 | ///
13 | /// When using the "flutter run" command, the "o" key will toggle between
14 + /// values of this enum when updating ``debugDefaultTargetPlatformOverride``.
15 | /// This lets one test how the application will work on various platforms
16 | /// without having to switch emulators or physical devices.
warning: 'nil' doesn't exist at '/Shaft/TextEditingValue/selection'
--> Sources/Shaft/Core/TextEditing.swift:74:43-74:46
72 | /// caret position.
73 | ///
74 + /// If the current ``selection`` is ``nil``, then the text currently does not
75 | /// have a selection or a caret location, and most text editing operations
76 | /// that rely on the current selection (for instance, insert a character at
warning: 'value' doesn't exist at '/Shaft/TextEditingDelta/apply(to:)'
--> Sources/Shaft/Core/TextEditing.swift:199:35-199:40
197 | /// state as a result of text editing.
198 | public protocol TextEditingDelta {
199 + /// Get a copy of the given ``value`` with the change applied to it.
200 | func apply(to value: TextEditingValue) -> TextEditingValue
201 | }
warning: 'value' doesn't exist at '/Shaft/TextEditingDeltaCommit/apply(to:)'
--> Sources/Shaft/Core/TextEditing.swift:199:35-199:40
197 | /// state as a result of text editing.
198 | public protocol TextEditingDelta {
199 + /// Get a copy of the given ``value`` with the change applied to it.
200 | func apply(to value: TextEditingValue) -> TextEditingValue
201 | }
warning: 'value' doesn't exist at '/Shaft/TextEditingDeltaComposing/apply(to:)'
--> Sources/Shaft/Core/TextEditing.swift:199:35-199:40
197 | /// state as a result of text editing.
198 | public protocol TextEditingDelta {
199 + /// Get a copy of the given ``value`` with the change applied to it.
200 | func apply(to value: TextEditingValue) -> TextEditingValue
201 | }
warning: 'extendTo' doesn't exist at '/Shaft/TextSelection/expandTo(_:extentAtIndex:)'
--> Sources/Shaft/Core/TextEditing.swift:443:30-443:38
441 | /// ``TextSelection/baseOffset``. Otherwise, their order will be preserved.
442 | ///
443 + /// ## Difference with ``extendTo``
444 | /// In contrast with this method, ``extendTo`` is a pivot; it holds
445 | /// ``TextSelection/baseOffset`` fixed while moving ``TextSelection/extentOffset``
warning: 'extendTo' doesn't exist at '/Shaft/TextSelection/expandTo(_:extentAtIndex:)'
--> Sources/Shaft/Core/TextEditing.swift:444:41-444:49
442 | ///
443 | /// ## Difference with ``extendTo``
444 + /// In contrast with this method, ``extendTo`` is a pivot; it holds
445 | /// ``TextSelection/baseOffset`` fixed while moving ``TextSelection/extentOffset``
446 | /// to the given ``TextPosition``. It doesn't strictly grow the selection and
warning: 'expandTo' doesn't exist at '/Shaft/TextSelection/extendTo(_:)'
--> Sources/Shaft/Core/TextEditing.swift:490:30-490:38
488 | /// size of the selection may shrink.
489 | ///
490 + /// ## Difference with ``expandTo``
491 | /// In contrast with this method, ``expandTo`` is strictly growth; the
492 | /// selection is grown to include the given ``TextPosition`` and will never
warning: 'expandTo' doesn't exist at '/Shaft/TextSelection/extendTo(_:)'
--> Sources/Shaft/Core/TextEditing.swift:491:41-491:49
489 | ///
490 | /// ## Difference with ``expandTo``
491 + /// In contrast with this method, ``expandTo`` is strictly growth; the
492 | /// selection is grown to include the given ``TextPosition`` and will never
493 | /// shrink.
warning: 'value' doesn't exist at '/Shaft/TextSelectionDelegate/userUpdateTextEditingValue(_:cause:)'
--> Sources/Shaft/Core/TextEditing.swift:515:35-515:40
513 |
514 | /// Indicates that the user has requested the delegate to replace its current
515 + /// text editing state with ``value``.
516 | ///
517 | /// The new ``value`` is treated as user input and thus may subject to input
warning: 'value' doesn't exist at '/Shaft/EditableTextState/userUpdateTextEditingValue(_:cause:)'
--> Sources/Shaft/Core/TextEditing.swift:515:35-515:40
513 |
514 | /// Indicates that the user has requested the delegate to replace its current
515 + /// text editing state with ``value``.
516 | ///
517 | /// The new ``value`` is treated as user input and thus may subject to input
warning: 'value' doesn't exist at '/Shaft/TextSelectionDelegate/userUpdateTextEditingValue(_:cause:)'
--> Sources/Shaft/Core/TextEditing.swift:517:19-517:24
515 | /// text editing state with ``value``.
516 | ///
517 + /// The new ``value`` is treated as user input and thus may subject to input
518 | /// formatting.
519 | ///
warning: 'value' doesn't exist at '/Shaft/EditableTextState/userUpdateTextEditingValue(_:cause:)'
--> Sources/Shaft/Core/TextEditing.swift:517:19-517:24
515 | /// text editing state with ``value``.
516 | ///
517 + /// The new ``value`` is treated as user input and thus may subject to input
518 | /// formatting.
519 | ///
warning: 'userUpdateTextEditingValue' doesn't exist at '/Shaft/EditableTextState'
--> Sources/Shaft/Core/TextEditing.swift:522:31-522:57
520 | /// See also:
521 | ///
522 + /// * ``EditableTextState/userUpdateTextEditingValue``: an implementation that
| ╰─suggestion: Replace 'userUpdateTextEditingValue' with 'userUpdateTextEditingValue(_:cause:)'
523 | /// applies additional pre-processing to the specified ``value``, before
524 | /// updating the text editing state.
warning: 'userUpdateTextEditingValue' doesn't exist at '/Shaft/EditableTextState'
--> Sources/Shaft/Core/TextEditing.swift:522:31-522:57
520 | /// See also:
521 | ///
522 + /// * ``EditableTextState/userUpdateTextEditingValue``: an implementation that
| ╰─suggestion: Replace 'userUpdateTextEditingValue' with 'userUpdateTextEditingValue(_:cause:)'
523 | /// applies additional pre-processing to the specified ``value``, before
524 | /// updating the text editing state.
warning: 'value' doesn't exist at '/Shaft/TextSelectionDelegate/userUpdateTextEditingValue(_:cause:)'
--> Sources/Shaft/Core/TextEditing.swift:523:64-523:69
521 | ///
522 | /// * ``EditableTextState/userUpdateTextEditingValue``: an implementation that
523 + /// applies additional pre-processing to the specified ``value``, before
524 | /// updating the text editing state.
525 | func userUpdateTextEditingValue(_ value: TextEditingValue, cause: SelectionChangedCause?)
warning: 'value' doesn't exist at '/Shaft/EditableTextState/userUpdateTextEditingValue(_:cause:)'
--> Sources/Shaft/Core/TextEditing.swift:523:64-523:69
521 | ///
522 | /// * ``EditableTextState/userUpdateTextEditingValue``: an implementation that
523 + /// applies additional pre-processing to the specified ``value``, before
524 | /// updating the text editing state.
525 | func userUpdateTextEditingValue(_ value: TextEditingValue, cause: SelectionChangedCause?)
warning: 'italic' doesn't exist at '/Shaft/FontVariation'
--> Sources/Shaft/Core/TextTypes.swift:63:25-63:31
61 | ///
62 | /// Some modern fonts allow this to be selected in a more fine-grained manner.
63 + /// See ``FontVariation/italic`` for details.
| ╰─suggestion: Replace 'italic' with 'italic(_:)'
64 | ///
65 | /// Italic type is distinct from slanted glyphs. To control the slant of a
warning: 'slant' doesn't exist at '/Shaft/FontVariation'
--> Sources/Shaft/Core/TextTypes.swift:66:41-66:46
64 | ///
65 | /// Italic type is distinct from slanted glyphs. To control the slant of a
66 + /// glyph, consider the ``FontVariation/slant`` font feature.
| ╰─suggestion: Replace 'slant' with 'slant(_:)'
67 | public enum FontStyle {
68 | /// Use the upright ("Roman") glyphs.
warning: 'weight' doesn't exist at '/Shaft/FontVariation'
--> Sources/Shaft/Core/TextTypes.swift:104:25-104:31
102 | ///
103 | /// Some modern fonts allow the weight to be adjusted in arbitrary increments.
104 + /// See ``FontVariation/weight`` for details.
| ╰─suggestion: Replace 'weight' with 'weight(_:)'
105 | public struct FontWeight: Equatable {
106 | private init(_ index: Int, _ value: Int) {
warning: 'binary32' doesn't exist at '/Shaft/FontVariation/value'
--> Sources/Shaft/Core/TextTypes.swift:420:12-420:20
418 | ///
419 | /// While this property is represented as a Float in this API
420 + /// (``binary32``(https://en.wikipedia.org/wiki/Single-precision_floating-point_format)),
421 | /// fonts use the fixed-point 16.16 format to represent the value of font
422 | /// variations. This means that the actual range is -32768.0 to approximately
warning: 'leading' doesn't exist at '/Shaft/TextLeadingDistribution/proportional'
--> Sources/Shaft/Core/TextTypes.swift:682:27-682:34
680 | /// used with a ``TextStyle/height`` much smaller than 1.0.
681 | public enum TextLeadingDistribution {
682 + /// Distributes the ``leading``(https://en.wikipedia.org/wiki/Leading)
683 | /// of the text proportionally above and below the text, to the font's
684 | /// ascent/descent ratio.
warning: 'String.Index' doesn't exist at '/Shaft/TextIndex'
--> Sources/Shaft/Core/TextTypes.swift:710:55-710:67
708 | /// rendering library and system APIs still use UTF-16. Therefore, UTF-16
709 | /// offsets are used to represent text positions in the framework, with some
710 + /// helpful utilities to convert between UTF-16 and ``String.Index``.
711 | public struct TextIndex: Equatable {
712 | public init(utf16Offset: Int) {
warning: 'offset' doesn't exist at '/Shaft/TextRange/collapsed(_:)'
--> Sources/Shaft/Core/TextTypes.swift:860:15-860:21
858 | /// A text range that starts and ends at offset.
859 | ///
860 + /// The ``offset`` argument must be non-null and greater than or equal to -1.
861 | public static func collapsed(_ offset: TextIndex) -> Self {
862 | return Self(start: offset, end: offset)
warning: 'typesetting strut' doesn't exist at '/Shaft/StrutStyle'
--> Sources/Shaft/Core/TextTypes.swift:981:7-981:24
979 | /// paragraph. This imaginary space is 'shaped' according the properties
980 | /// defined in this class. Flutter's strut is based on
981 + /// ``typesetting strut``(https://en.wikipedia.org/wiki/Strut_(typesetting))
982 | /// and CSS's ``line-height``(https://www.w3.org/TR/CSS2/visudet.html#line-height).
983 | ///
warning: 'line-height' doesn't exist at '/Shaft/StrutStyle'
--> Sources/Shaft/Core/TextTypes.swift:982:17-982:28
980 | /// defined in this class. Flutter's strut is based on
981 | /// ``typesetting strut``(https://en.wikipedia.org/wiki/Strut_(typesetting))
982 + /// and CSS's ``line-height``(https://www.w3.org/TR/CSS2/visudet.html#line-height).
983 | ///
984 | /// No lines may be shorter than the strut. The ascent and descent of the
warning: 'fontFamily' doesn't exist at '/Shaft/StrutStyle/fontFamilies'
--> Sources/Shaft/Core/TextTypes.swift:998:33-998:43
996 | /// provided.
997 | ///
998 + /// The value provided in ``fontFamily`` will act as the preferred/first font
999 | /// family that will be searched for, followed in order by the font families
1000 | /// in ``fontFamilyFallback``. If all font families are exhausted and no match
warning: 'fontFamilyFallback' doesn't exist at '/Shaft/StrutStyle/fontFamilies'
--> Sources/Shaft/Core/TextTypes.swift:1000:14-1000:32
998 | /// The value provided in ``fontFamily`` will act as the preferred/first font
999 | /// family that will be searched for, followed in order by the font families
1000 + /// in ``fontFamilyFallback``. If all font families are exhausted and no match
1001 | /// was found, the default platform font family will be used instead. Unlike
1002 | /// ``TextStyle/fontFamilyFallback``, the font does not need to contain the
warning: 'leadingDistribution' doesn't exist at '/Shaft/StrutStyle/leading'
--> Sources/Shaft/Core/TextTypes.swift:1047:55-1047:74
1045 |
1046 | /// The additional leading to apply to the strut as a multiple of
1047 + /// ``fontSize``, independent of ``height`` and ``leadingDistribution``.
1048 | ///
1049 | /// Leading is additional spacing between lines. Half of the leading is
warning: 'leadingDistribution' doesn't exist at '/Shaft/StrutStyle/leading'
--> Sources/Shaft/Core/TextTypes.swift:1052:55-1052:74
1050 | /// added to the top and the other half to the bottom of the line. This
1051 | /// differs from ``height`` since the spacing is always equally distributed
1052 + /// above and below the baseline, regardless of ``leadingDistribution``.
1053 | ///
1054 | /// The default leading is null, which will use the font-specified leading.
warning: 'layout' doesn't exist at '/Shaft/Paragraph'
--> Sources/Shaft/Core/TextTypes.swift:1125:35-1125:41
1123 | /// after the first one that overflows the width constraints are dropped.
1124 | /// The width constraints are those set in the ``ParagraphConstraints`` object
1125 + /// passed to the ``Paragraph/layout`` method.
| ╰─suggestion: Replace 'layout' with 'layout(_:)'
1126 | public var maxLines: Int?
1127 |
warning: 'layout' doesn't exist at '/Shaft/Paragraph'
--> Sources/Shaft/Core/TextTypes.swift:1134:21-1134:27
1132 | /// constraints, and subsequent lines are dropped. The width constraints are
1133 | /// those set in the ``ParagraphConstraints`` object passed to the
1134 + /// ``Paragraph/layout`` method. The empty string and the null value are
| ╰─suggestion: Replace 'layout' with 'layout(_:)'
1135 | /// considered equivalent and turn off this behavior.
1136 | public var ellipsis: String?
warning: 'pop' doesn't exist at '/Shaft/ParagraphBuilder/pushStyle(_:)'
--> Sources/Shaft/Core/TextTypes.swift:1156:59-1156:62
1154 |
1155 | public protocol ParagraphBuilder: AnyObject {
1156 + /// Applies the given style to the added text until ``pop`` is called.
1157 | ///
1158 | /// See ``pop`` for details.
warning: 'pop' doesn't exist at '/Shaft/ParagraphBuilder/pushStyle(_:)'
--> Sources/Shaft/Core/TextTypes.swift:1158:15-1158:18
1156 | /// Applies the given style to the added text until ``pop`` is called.
1157 | ///
1158 + /// See ``pop`` for details.
1159 | func pushStyle(_ style: SpanStyle)
1160 |
warning: 'pushStyle' doesn't exist at '/Shaft/ParagraphBuilder/pop()'
--> Sources/Shaft/Core/TextTypes.swift:1161:54-1161:63
1159 | func pushStyle(_ style: SpanStyle)
1160 |
1161 + /// Ends the effect of the most recent call to ``pushStyle``.
1162 | ///
1163 | /// Internally, the paragraph builder maintains a stack of text styles. Text
warning: 'pop' doesn't exist at '/Shaft/ParagraphBuilder/pop()'
--> Sources/Shaft/Core/TextTypes.swift:1165:19-1165:22
1163 | /// Internally, the paragraph builder maintains a stack of text styles. Text
1164 | /// added to the paragraph is affected by all the styles in the stack.
1165 + /// Calling ``pop`` removes the topmost style in the stack, leaving the
1166 | /// remaining styles in effect.
1167 | func pop()
warning: 'layout' doesn't exist at '/Shaft/Paragraph'
--> Sources/Shaft/Core/TextTypes.swift:1184:65-1184:71
1182 | /// Layout constraints for ``Paragraph`` objects.
1183 | ///
1184 + /// Instances of this class are typically used with ``Paragraph/layout``.
| ╰─suggestion: Replace 'layout' with 'layout(_:)'
1185 | ///
1186 | /// The only constraint that can be specified is the ``width``. See the discussion
warning: 'width' doesn't exist at '/Shaft/ParagraphConstraints'
--> Sources/Shaft/Core/TextTypes.swift:1186:56-1186:61
1184 | /// Instances of this class are typically used with ``Paragraph/layout``.
1185 | ///
1186 + /// The only constraint that can be specified is the ``width``. See the discussion
| ╰─suggestion: Replace 'width' with 'width(_:)'
1187 | /// at ``width`` for more details.
1188 | public enum ParagraphConstraints: Equatable {
warning: 'width' doesn't exist at '/Shaft/ParagraphConstraints'
--> Sources/Shaft/Core/TextTypes.swift:1187:10-1187:15
1185 | ///
1186 | /// The only constraint that can be specified is the ``width``. See the discussion
1187 + /// at ``width`` for more details.
| ╰─suggestion: Replace 'width' with 'width(_:)'
1188 | public enum ParagraphConstraints: Equatable {
1189 | /// The width the paragraph should use whey computing the positions of glyphs.
warning: 'new' doesn't exist at '/Shaft/ParagraphStyle'
--> Sources/Shaft/Core/TextTypes.swift:1201:26-1201:29
1199 | ///
1200 | /// The width influences how ellipses are applied. See the discussion at
1201 + /// ``ParagraphStyle/new`` for more details.
1202 | ///
1203 | /// This width is also used to position glyphs according to the ``TextAlign``
warning: 'getBoxesForRange' doesn't exist at '/Shaft/Paragraph'
--> Sources/Shaft/Core/TextTypes.swift:1210:17-1210:33
1208 |
1209 | /// Defines various ways to horizontally bound the boxes returned by
1210 + /// ``Paragraph/getBoxesForRange``.
| ├─suggestion: Replace 'getBoxesForRange' with 'getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
| ╰─suggestion: Replace 'getBoxesForRange' with 'getBoxesForPlaceholders()'
1211 | ///
1212 | /// See ``BoxHeightStyle`` for a similar property to control height.
warning: 'getBoxesForRange' doesn't exist at '/Shaft/Paragraph'
--> Sources/Shaft/Core/TextTypes.swift:1229:17-1229:33
1227 |
1228 | /// Defines various ways to vertically bound the boxes returned by
1229 + /// ``Paragraph/getBoxesForRange``.
| ├─suggestion: Replace 'getBoxesForRange' with 'getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
| ╰─suggestion: Replace 'getBoxesForRange' with 'getBoxesForPlaceholders()'
1230 | ///
1231 | /// See ``BoxWidthStyle`` for a similar property to control width.
warning: 'drawParagraph' doesn't exist at '/Shaft/Canvas'
--> Sources/Shaft/Core/TextTypes.swift:1286:68-1286:81
1284 | /// To create a ``Paragraph`` object, use a ``ParagraphBuilder``.
1285 | ///
1286 + /// Paragraphs can be displayed on a ``Canvas`` using the ``Canvas/drawParagraph``
1287 | /// method.
1288 | public protocol Paragraph: AnyObject {
warning: 'layout' doesn't exist at '/Shaft/Paragraph/width'
--> Sources/Shaft/Core/TextTypes.swift:1291:28-1291:34
1289 | /// The amount of horizontal space this paragraph occupies.
1290 | ///
1291 + /// Valid only after ``layout`` has been called.
1292 | var width: Float { get }
1293 |
warning: 'layout' doesn't exist at '/Shaft/Paragraph/height'
--> Sources/Shaft/Core/TextTypes.swift:1296:28-1296:34
1294 | /// The amount of vertical space this paragraph occupies.
1295 | ///
1296 + /// Valid only after ``layout`` has been called.
1297 | var height: Float { get }
1298 |
warning: 'layout' doesn't exist at '/Shaft/Paragraph/longestLine'
--> Sources/Shaft/Core/TextTypes.swift:1302:28-1302:34
1300 | /// the rightmost glyph in the paragraph.
1301 | ///
1302 + /// Valid only after ``layout`` has been called.
1303 | var longestLine: Float { get }
1304 |
warning: 'layout' doesn't exist at '/Shaft/Paragraph/minIntrinsicWidth'
--> Sources/Shaft/Core/TextTypes.swift:1308:28-1308:34
1306 | /// its contents within itself.
1307 | ///
1308 + /// Valid only after ``layout`` has been called.
1309 | var minIntrinsicWidth: Float { get }
1310 |
warning: 'layout' doesn't exist at '/Shaft/Paragraph/maxIntrinsicWidth'
--> Sources/Shaft/Core/TextTypes.swift:1314:28-1314:34
1312 | /// decreases the height.
1313 | ///
1314 + /// Valid only after ``layout`` has been called.
1315 | var maxIntrinsicWidth: Float { get }
1316 |
warning: 'new' doesn't exist at '/Shaft/ParagraphStyle'
--> Sources/Shaft/Core/TextTypes.swift:1331:26-1331:29
1329 | ///
1330 | /// See the discussion of the `maxLines` and `ellipsis` arguments at
1331 + /// ``ParagraphStyle/new``.
1332 | var didExceedMaxLines: Bool { get }
1333 |
warning: 'boxHeightStyle' doesn't exist at '/Shaft/Paragraph/getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
--> Sources/Shaft/Core/TextTypes.swift:1341:15-1341:29
1339 | /// Returns a list of text boxes that enclose the given text range.
1340 | ///
1341 + /// The ``boxHeightStyle`` and ``boxWidthStyle`` parameters allow customization
1342 | /// of how the boxes are bound vertically and horizontally. Both style
1343 | /// parameters default to the tight option, which will provide close-fitting
warning: 'boxWidthStyle' doesn't exist at '/Shaft/Paragraph/getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
--> Sources/Shaft/Core/TextTypes.swift:1341:38-1341:51
1339 | /// Returns a list of text boxes that enclose the given text range.
1340 | ///
1341 + /// The ``boxHeightStyle`` and ``boxWidthStyle`` parameters allow customization
1342 | /// of how the boxes are bound vertically and horizontally. Both style
1343 | /// parameters default to the tight option, which will provide close-fitting
warning: 'boxHeightStyle' doesn't exist at '/Shaft/Paragraph/getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
--> Sources/Shaft/Core/TextTypes.swift:1349:15-1349:29
1347 | /// where positive y values indicate down.
1348 | ///
1349 + /// The ``boxHeightStyle`` and ``boxWidthStyle`` parameters must not be null.
1350 | ///
1351 | /// See ``BoxHeightStyle`` and ``BoxWidthStyle`` for full descriptions of each option.
warning: 'boxWidthStyle' doesn't exist at '/Shaft/Paragraph/getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
--> Sources/Shaft/Core/TextTypes.swift:1349:38-1349:51
1347 | /// where positive y values indicate down.
1348 | ///
1349 + /// The ``boxHeightStyle`` and ``boxWidthStyle`` parameters must not be null.
1350 | ///
1351 | /// See ``BoxHeightStyle`` and ``BoxWidthStyle`` for full descriptions of each option.
warning: 'addPlaceholder' doesn't exist at '/Shaft/ParagraphBuilder'
--> Sources/Shaft/Core/TextTypes.swift:1362:28-1362:42
1360 | ///
1361 | /// The order of the boxes are in the same order as passed in through
1362 + /// ``ParagraphBuilder/addPlaceholder``.
1363 | ///
1364 | /// Coordinates of the ``TextBox`` are relative to the upper-left corner of the paragraph,
warning: 'getBoxesForRange' doesn't exist at '/Shaft/Paragraph'
--> Sources/Shaft/Core/TextTypes.swift:1460:46-1460:62
1458 | /// The measurements here are for the line as a whole, and represent the maximum
1459 | /// extent of the line instead of per-run or per-glyph metrics. For more detailed
1460 + /// metrics, see ``TextBox`` and ``Paragraph/getBoxesForRange``.
| ├─suggestion: Replace 'getBoxesForRange' with 'getBoxesForRange(_:_:boxHeightStyle:boxWidthStyle:)'
| ╰─suggestion: Replace 'getBoxesForRange' with 'getBoxesForPlaceholders()'
1461 | ///
1462 | /// ``LineMetrics`` should be obtained directly from the [Paragraph.computeLineMetrics]
warning: 'addPlaceholder' doesn't exist at '/Shaft/ParagraphBuilder'
--> Sources/Shaft/Core/TextTypes.swift:1576:32-1576:46
1574 | /// Where to vertically align the placeholder relative to the surrounding text.
1575 | ///
1576 + /// Used by ``ParagraphBuilder/addPlaceholder``.
1577 | public enum PlaceholderAlignment {
1578 | /// Match the baseline of the placeholder with the baseline.
warning: 'ValueSetter' doesn't exist at '/Shaft/ValueChanged'
--> Sources/Shaft/Foundation/Callback.swift:20:10-20:21
18 | /// See also:
19 | ///
20 + /// * ``ValueSetter``, for callbacks that report that a value has been set.
21 | public typealias ValueChanged<T> = (T) -> Void
22 |
warning: 'transform' doesn't exist at '/Shaft/MatrixUtils/getAsTranslation(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:8:29-8:38
6 |
7 | public struct MatrixUtils {
8 + /// Returns the given ``transform`` matrix as an ``Offset``, if the matrix is
9 | /// nothing but a 2D translation.
10 | ///
warning: 'transform' doesn't exist at '/Shaft/MatrixUtils/getAsScale(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:34:29-34:38
32 | }
33 |
34 + /// Returns the given ``transform`` matrix as a ``double`` describing a uniform
35 | /// scale, if the matrix is nothing but a symmetric 2D scale transform.
36 | ///
warning: 'double' doesn't exist at '/Shaft/MatrixUtils/getAsScale(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:34:55-34:61
32 | }
33 |
34 + /// Returns the given ``transform`` matrix as a ``double`` describing a uniform
35 | /// scale, if the matrix is nothing but a symmetric 2D scale transform.
36 | ///
warning: 'angle' doesn't exist at '/Shaft/SwiftMath/Matrix4x4f/rotateX(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:544:23-544:28
542 | }
543 |
544 + /// Rotate this ``angle`` radians around X
545 | public mutating func rotateX(_ angle: Angle) {
546 | let (sin:sinAngle, cos:cosAngle) = sincos(angle)
warning: 'angle' doesn't exist at '/Shaft/SwiftMath/Matrix4x4f/rotateY(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:566:30-566:35
564 | }
565 |
566 + /// Rotate this matrix ``angle`` radians around Y
567 | public mutating func rotateY(_ angle: Angle) {
568 | let (sin:sinAngle, cos:cosAngle) = sincos(angle)
warning: 'angle' doesn't exist at '/Shaft/SwiftMath/Matrix4x4f/rotateZ(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:588:30-588:35
586 | }
587 |
588 + /// Rotate this matrix ``angle`` radians around Z
589 | public mutating func rotateZ(_ angle: Angle) {
590 | let (sin:sinAngle, cos:cosAngle) = sincos(angle)
warning: 'Vector3' doesn't exist at '/Shaft/SwiftMath/Matrix4x4f/scale(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:636:34-636:41
634 | }
635 |
636 + /// Scale this matrix by a ``Vector3``
637 | public mutating func scale(_ vector: Vector3f) {
638 | scale(vector.x, vector.y, vector.z)
warning: 'angle' doesn't exist at '/Shaft/SwiftMath/Matrix4x4f/rotate(_:_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:646:23-646:28
644 | }
645 |
646 + /// Rotate this ``angle`` radians around [axis]
647 | public mutating func rotate(_ axis: Vector3f, _ angle: Angle) {
648 | let len = axis.length
warning: 'Vector3' doesn't exist at '/Shaft/SwiftMath/Matrix4x4f/translate(_:)'
--> Sources/Shaft/Foundation/MatrixUtils.swift:708:38-708:45
706 | }
707 |
708 + /// Translate this matrix by a ``Vector3``
709 | public mutating func translate(_ vector: Vector3f) {
710 | translate(vector.x, vector.y, vector.z)
warning: 'DateTime' doesn't exist at '/Shaft/Swift/Duration/secondsPerMinute'
--> Sources/Shaft/Foundation/Time.swift:30:32-30:40
28 | /// Notice that some minutes of official clock time might
29 | /// differ in length because of leap seconds.
30 + /// The ``Duration`` and ``DateTime`` classes ignore leap seconds
31 | /// and consider all minutes to have 60 seconds.
32 | public static var secondsPerMinute = 60
warning: 'acceptGesture' doesn't exist at '/Shaft/GestureArenaMember'
--> Sources/Shaft/Gestures/Arena.swift:21:54-21:67
19 | ///
20 | /// Receives callbacks from the GestureArena to notify the object when it wins
21 + /// or loses a gesture negotiation. Exactly one of ``acceptGesture`` or
| ╰─suggestion: Replace 'acceptGesture' with 'acceptGesture(pointer:)'
22 | /// ``rejectGesture`` will be called for each arena this member was added to,
23 | /// regardless of what caused the arena to be resolved. For example, if a
warning: 'rejectGesture' doesn't exist at '/Shaft/GestureArenaMember'
--> Sources/Shaft/Gestures/Arena.swift:22:7-22:20
20 | /// Receives callbacks from the GestureArena to notify the object when it wins
21 | /// or loses a gesture negotiation. Exactly one of ``acceptGesture`` or
22 + /// ``rejectGesture`` will be called for each arena this member was added to,
| ╰─suggestion: Replace 'rejectGesture' with 'rejectGesture(pointer:)'
23 | /// regardless of what caused the arena to be resolved. For example, if a
24 | /// member resolves the arena itself, that member still receives an
warning: 'acceptGesture' doesn't exist at '/Shaft/GestureArenaMember'
--> Sources/Shaft/Gestures/Arena.swift:25:7-25:20
23 | /// regardless of what caused the arena to be resolved. For example, if a
24 | /// member resolves the arena itself, that member still receives an
25 + /// ``acceptGesture`` callback.
| ╰─suggestion: Replace 'acceptGesture' with 'acceptGesture(pointer:)'
26 | public protocol GestureArenaMember: AnyObject {
27 | /// Called when this member wins the arena for the given pointer id.
warning: 'hold' doesn't exist at '/Shaft/GestureArenaManager/sweep(_:)'
--> Sources/Shaft/Gestures/Arena.swift:112:23-112:27
110 | ///
111 | /// Recognizers that wish to delay resolving an arena past ``PointerUpEvent``
112 + /// should call ``hold`` to delay sweep until ``release`` is called.
113 | ///
114 | /// See also:
warning: 'release' doesn't exist at '/Shaft/GestureArenaManager/sweep(_:)'
--> Sources/Shaft/Gestures/Arena.swift:112:53-112:60
110 | ///
111 | /// Recognizers that wish to delay resolving an arena past ``PointerUpEvent``
112 + /// should call ``hold`` to delay sweep until ``release`` is called.
113 | ///
114 | /// See also:
warning: 'hold' doesn't exist at '/Shaft/GestureArenaManager/sweep(_:)'
--> Sources/Shaft/Gestures/Arena.swift:116:14-116:18
114 | /// See also:
115 | ///
116 + /// * ``hold``
117 | /// * ``release``
118 | public func sweep(_ pointer: Int) {
warning: 'release' doesn't exist at '/Shaft/GestureArenaManager/sweep(_:)'
--> Sources/Shaft/Gestures/Arena.swift:117:14-117:21
115 | ///
116 | /// * ``hold``
117 + /// * ``release``
118 | public func sweep(_ pointer: Int) {
119 | guard let state = arenas[pointer] else {
warning: 'hold' doesn't exist at '/Shaft/GestureArenaManager/hold(_:)'
--> Sources/Shaft/Gestures/Arena.swift:142:74-142:78
140 | /// Typically, a winner is chosen in an arena after all the other
141 | /// ``PointerUpEvent`` processing by [sweep]. If a recognizer wishes to delay
142 + /// resolving an arena past ``PointerUpEvent``, the recognizer can ``hold`` the
143 | /// arena open using this function. To release such a hold and let the arena
144 | /// resolve, call ``release``.
warning: 'release' doesn't exist at '/Shaft/GestureArenaManager/hold(_:)'
--> Sources/Shaft/Gestures/Arena.swift:144:25-144:32
142 | /// resolving an arena past ``PointerUpEvent``, the recognizer can ``hold`` the
143 | /// arena open using this function. To release such a hold and let the arena
144 + /// resolve, call ``release``.
145 | ///
146 | /// See also:
warning: 'release' doesn't exist at '/Shaft/GestureArenaManager/hold(_:)'
--> Sources/Shaft/Gestures/Arena.swift:149:14-149:21
147 | ///
148 | /// * [sweep]
149 + /// * ``release``
150 | public func hold(_ pointer: Int) {
151 | guard let state = arenas[pointer] else {
warning: 'hold' doesn't exist at '/Shaft/GestureArenaManager/release(_:)'
--> Sources/Shaft/Gestures/Arena.swift:165:14-165:18
163 | ///
164 | /// * [sweep]
165 + /// * ``hold``
166 | public func release(_ pointer: Int) {
167 | guard let state = arenas[pointer] else {
warning: 'localDelta' doesn't exist at '/Shaft/PointerEvent/transform'
--> Sources/Shaft/Gestures/PointerEvents.swift:105:72-105:82
103 | /// space into the coordinate space of the event receiver.
104 | ///
105 + /// This value affects what is returned by ``localPosition`` and ``localDelta``.
106 | /// If this value is null, it is treated as the identity transformation.
107 | public let transform: Matrix4x4f?
warning: 'route' doesn't exist at '/Shaft/PointerRouter'
--> Sources/Shaft/Gestures/PointerRouter.swift:82:57-82:62
80 | /// pointer, call route.
81 | ///
82 + /// Routes added reentrantly within ``PointerRouter/route`` will take effect when
| ╰─suggestion: Replace 'route' with 'route(_:)'
83 | /// routing the next event.
84 | public func addRoute(
warning: 'route' doesn't exist at '/Shaft/PointerRouter'
--> Sources/Shaft/Gestures/PointerRouter.swift:99:59-99:64
97 | /// pointer. Requires that this route was previously added to the router.
98 | ///
99 + /// Routes removed reentrantly within ``PointerRouter/route`` will take effect
| ╰─suggestion: Replace 'route' with 'route(_:)'
100 | /// immediately.
101 | public func removeRoute(_ pointer: Int, _ handler: PointerRoute) {
warning: 'route' doesn't exist at '/Shaft/PointerRouter'
--> Sources/Shaft/Gestures/PointerRouter.swift:115:57-115:62
113 | /// Whenever this object routes a ``PointerEvent``, call route.
114 | ///
115 + /// Routes added reentrantly within ``PointerRouter/route`` will take effect when
| ╰─suggestion: Replace 'route' with 'route(_:)'
116 | /// routing the next event.
117 | public func addGlobalRoute(
warning: 'addGlobalRoute' doesn't exist at '/Shaft/PointerRouter/removeGlobalRoute(_:)'
--> Sources/Shaft/Gestures/PointerRouter.swift:128:42-128:56
126 | ///
127 | /// No longer call route when routing a ``PointerEvent``. Requires that this
128 + /// route was previously added via ``addGlobalRoute``.
129 | ///
130 | /// Routes removed reentrantly within ``PointerRouter/route`` will take effect
warning: 'route' doesn't exist at '/Shaft/PointerRouter'
--> Sources/Shaft/Gestures/PointerRouter.swift:130:59-130:64
128 | /// route was previously added via ``addGlobalRoute``.
129 | ///
130 + /// Routes removed reentrantly within ``PointerRouter/route`` will take effect
| ╰─suggestion: Replace 'route' with 'route(_:)'
131 | /// immediately.
132 | public func removeGlobalRoute(_ handler: PointerRoute) {
warning: 'isPointerAllowed' doesn't exist at '/Shaft/BaseTapGestureRecognizer'
--> Sources/Shaft/Gestures/Recongnizer/TapRecongnizer.swift:118:7-118:23
116 | /// define which buttons to accept, or what to do when a tap happens. If you
117 | /// want to build a custom tap recognizer, extend this class by overriding
118 + /// ``isPointerAllowed`` and the handler methods.
119 | ///
120 | /// See also:
warning: 'minValue' doesn't exist at '/Shaft/Velocity/clampMagnitude(minValue:maxValue:)'
--> Sources/Shaft/Gestures/VelocityTracker.swift:43:65-43:73
41 | }
42 |
43 + /// Return a velocity whose magnitude has been clamped to ``minValue``
44 | /// and ``maxValue``.
45 | ///
warning: 'maxValue' doesn't exist at '/Shaft/Velocity/clampMagnitude(minValue:maxValue:)'
--> Sources/Shaft/Gestures/VelocityTracker.swift:44:15-44:23
42 |
43 | /// Return a velocity whose magnitude has been clamped to ``minValue``
44 + /// and ``maxValue``.
45 | ///
46 | /// If the magnitude of this Velocity is less than minValue then return a new
warning: 'minValue' doesn't exist at '/Shaft/Velocity/clampMagnitude(minValue:maxValue:)'
--> Sources/Shaft/Gestures/VelocityTracker.swift:47:63-47:71
45 | ///
46 | /// If the magnitude of this Velocity is less than minValue then return a new
47 + /// Velocity with the same direction and with magnitude ``minValue``. Similarly,
48 | /// if the magnitude of this Velocity is greater than maxValue then return a
49 | /// new Velocity with the same direction and magnitude ``maxValue``.
warning: 'maxValue' doesn't exist at '/Shaft/Velocity/clampMagnitude(minValue:maxValue:)'
--> Sources/Shaft/Gestures/VelocityTracker.swift:49:62-49:70
47 | /// Velocity with the same direction and with magnitude ``minValue``. Similarly,
48 | /// if the magnitude of this Velocity is greater than maxValue then return a
49 + /// new Velocity with the same direction and magnitude ``maxValue``.
50 | ///
51 | /// If the magnitude of this Velocity is within the specified bounds then
warning: 'addPosition' doesn't exist at '/Shaft/VelocityTracker'
--> Sources/Shaft/Gestures/VelocityTracker.swift:133:45-133:56
131 | /// Computes a pointer's velocity based on data from ``PointerMoveEvent``s.
132 | ///
133 + /// The input data is provided by calling ``addPosition``. Adding data is cheap.
| ╰─suggestion: Replace 'addPosition' with 'addPosition(_:_:)'
134 | ///
135 | /// To obtain a velocity, call ``getVelocity`` or ``getVelocityEstimate``. This will
warning: 'getVelocity' doesn't exist at '/Shaft/VelocityTracker'
--> Sources/Shaft/Gestures/VelocityTracker.swift:135:34-135:45
133 | /// The input data is provided by calling ``addPosition``. Adding data is cheap.
134 | ///
135 + /// To obtain a velocity, call ``getVelocity`` or ``getVelocityEstimate``. This will
| ├─suggestion: Replace 'getVelocity' with 'getVelocity()'
| ╰─suggestion: Replace 'getVelocity' with 'getVelocityEstimate()'
136 | /// compute the velocity based on the data added so far. Only call these when
137 | /// you need to use the velocity, as they are comparatively expensive.
warning: 'getVelocityEstimate' doesn't exist at '/Shaft/VelocityTracker'
--> Sources/Shaft/Gestures/VelocityTracker.swift:135:53-135:72
133 | /// The input data is provided by calling ``addPosition``. Adding data is cheap.
134 | ///
135 + /// To obtain a velocity, call ``getVelocity`` or ``getVelocityEstimate``. This will
| ├─suggestion: Replace 'getVelocityEstimate' with 'getVelocityEstimate()'
| ╰─suggestion: Replace 'getVelocityEstimate' with 'getVelocity()'
136 | /// compute the velocity based on the data added so far. Only call these when
137 | /// you need to use the velocity, as they are comparatively expensive.
warning: 'addPosition' doesn't exist at '/Shaft/VelocityTracker/getVelocityEstimate()'
--> Sources/Shaft/Gestures/VelocityTracker.swift:178:38-178:49
176 | /// tracker given the current information available to the tracker.
177 | ///
178 + /// Information is added using ``addPosition``.
179 | ///
180 | /// Returns nil if there is no data on which to base an estimate.
warning: 'AlignmentDirectional' doesn't exist at '/Shaft/AlignmentGeometry'
--> Sources/Shaft/Painting/Alignment.swift:12:39-12:59
10 | ///
11 | /// A property or argument of this type accepts classes created either with [
12 + /// Alignment] and its variants, or ``AlignmentDirectional/new``.
13 | ///
14 | /// To convert an ``AlignmentGeometry`` object of indeterminate type into an
warning: 'resolve' doesn't exist at '/Shaft/AlignmentGeometry'
--> Sources/Shaft/Painting/Alignment.swift:15:38-15:45
13 | ///
14 | /// To convert an ``AlignmentGeometry`` object of indeterminate type into an
15 + /// ``Alignment`` object, call the ``resolve`` method.
| ╰─suggestion: Replace 'resolve' with 'resolve(_:)'
16 | public protocol AlignmentGeometry: Equatable {
17 | func resolve(_ direction: TextDirection) -> Alignment
warning: 'AlignmentDirectional' doesn't exist at '/Shaft/Alignment'
--> Sources/Shaft/Painting/Alignment.swift:47:39-47:59
45 | /// ``Alignment`` uses visual coordinates, which means increasing ``x`` moves the
46 | /// point from left to right. To support layouts with a right-to-left
47 + /// [TextDirection], consider using ``AlignmentDirectional``, in which the
| ╰─suggestion: Replace 'AlignmentDirectional' with 'AlignmentGeometry-Implementations'
48 | /// direction the point moves when increasing the horizontal value depends on
49 | /// the [TextDirection].
warning: 'compareTo' doesn't exist at '/Shaft/TextSpan'
--> Sources/Shaft/Painting/BasicTypes.swift:12:24-12:33
10 | /// it will affect the rendering.
11 | ///
12 + /// Used by ``TextSpan/compareTo`` and ``TextStyle/compareTo``.
| ╰─suggestion: Replace 'compareTo' with 'compareTo(_:)'
13 | ///
14 | /// The values in this enum are ordered such that they are in increasing order
warning: 'compareTo' doesn't exist at '/Shaft/TextStyle'
--> Sources/Shaft/Painting/BasicTypes.swift:12:52-12:61
10 | /// it will affect the rendering.
11 | ///
12 + /// Used by ``TextSpan/compareTo`` and ``TextStyle/compareTo``.
13 | ///
14 | /// The values in this enum are ordered such that they are in increasing order
warning: 'markNeedsPaint' doesn't exist at '/Shaft/RenderObject'
--> Sources/Shaft/Painting/BasicTypes.swift:32:24-32:38
30 | /// For example, only the color is changed.
31 | ///
32 + /// ``RenderObject/markNeedsPaint`` would be necessary to handle this kind of
| ├─suggestion: Replace 'markNeedsPaint' with 'markNeedsPaint()'
| ╰─suggestion: Replace 'markNeedsPaint' with 'markNeedsLayout()'
33 | /// change in a render object.
34 | case paint
warning: 'markNeedsLayout' doesn't exist at '/Shaft/RenderObject'
--> Sources/Shaft/Painting/BasicTypes.swift:42:24-42:39
40 | /// This is the most drastic level of change possible.
41 | ///
42 + /// ``RenderObject/markNeedsLayout`` would be necessary to handle this kind of
| ├─suggestion: Replace 'markNeedsLayout' with 'markNeedsLayout()'
| ├─suggestion: Replace 'markNeedsLayout' with 'markParentNeedsLayout()'
| ├─suggestion: Replace 'markNeedsLayout' with 'markNeedsPaint()'
| ╰─suggestion: Replace 'markNeedsLayout' with 'markNeedsCompositedLayerUpdate()'
43 | /// change in a render object.
44 | case layout
warning: 'canMerge' doesn't exist at '/Shaft/BorderSide/merge(_:_:)'
--> Sources/Shaft/Painting/Borders.swift:46:44-46:52
44 | /// ``BorderSide``s.
45 | ///
46 + /// It is only valid to call this if ``canMerge`` returns true for the two
47 | /// sides.
48 | ///
warning: 'ShapeDecoration' doesn't exist at '/Shaft/BoxShape'
--> Sources/Shaft/Painting/BoxBorder.swift:11:64-11:79
9 | /// The shape to use when rendering a ``Border`` or ``BoxDecoration``.
10 | ///
11 + /// Consider using ``ShapeBorder`` subclasses directly (with ``ShapeDecoration``),
12 | /// instead of using ``BoxShape`` and ``Border``, if the shapes will need to be
13 | /// interpolated or animated. The ``Border`` class cannot interpolate between
warning: 'RoundedRectangleBorder' doesn't exist at '/Shaft/BoxShape/rectangle'
--> Sources/Shaft/Painting/BoxBorder.swift:22:14-22:36
20 | /// See also:
21 | ///
22 + /// * ``RoundedRectangleBorder``, the equivalent ``ShapeBorder``.
23 | case rectangle
24 |
warning: 'border' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:13:21-13:27
11 | /// The ``BoxDecoration`` class provides a variety of ways to draw a box.
12 | ///
13 + /// The box has a ``border``, a body, and may cast a ``boxShadow``.
14 | ///
15 | /// The ``shape`` of the box can be a circle or a rectangle. If it is a rectangle,
warning: 'boxShadow' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:13:56-13:65
11 | /// The ``BoxDecoration`` class provides a variety of ways to draw a box.
12 | ///
13 + /// The box has a ``border``, a body, and may cast a ``boxShadow``.
14 | ///
15 | /// The ``shape`` of the box can be a circle or a rectangle. If it is a rectangle,
warning: 'shape' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:15:11-15:16
13 | /// The box has a ``border``, a body, and may cast a ``boxShadow``.
14 | ///
15 + /// The ``shape`` of the box can be a circle or a rectangle. If it is a rectangle,
16 | /// then the ``borderRadius`` property controls the roundness of the corners.
17 | ///
warning: 'borderRadius' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:16:16-16:28
14 | ///
15 | /// The ``shape`` of the box can be a circle or a rectangle. If it is a rectangle,
16 + /// then the ``borderRadius`` property controls the roundness of the corners.
17 | ///
18 | /// The body of the box is painted in layers. The bottom-most layer is the
warning: 'color' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:19:7-19:12
17 | ///
18 | /// The body of the box is painted in layers. The bottom-most layer is the
19 + /// ``color``, which fills the box. Above that is the ``gradient``, which also fills
20 | /// the box. Finally there is the ``image``, the precise alignment of which is
21 | /// controlled by the ``DecorationImage`` class.
warning: 'gradient' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:19:57-19:65
17 | ///
18 | /// The body of the box is painted in layers. The bottom-most layer is the
19 + /// ``color``, which fills the box. Above that is the ``gradient``, which also fills
20 | /// the box. Finally there is the ``image``, the precise alignment of which is
21 | /// controlled by the ``DecorationImage`` class.
warning: 'image' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:20:37-20:42
18 | /// The body of the box is painted in layers. The bottom-most layer is the
19 | /// ``color``, which fills the box. Above that is the ``gradient``, which also fills
20 + /// the box. Finally there is the ``image``, the precise alignment of which is
21 | /// controlled by the ``DecorationImage`` class.
22 | ///
warning: 'DecorationImage' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:21:25-21:40
19 | /// ``color``, which fills the box. Above that is the ``gradient``, which also fills
20 | /// the box. Finally there is the ``image``, the precise alignment of which is
21 + /// controlled by the ``DecorationImage`` class.
| ╰─suggestion: Replace 'DecorationImage' with 'Decoration-Implementations'
22 | ///
23 | /// The ``border`` paints over the body; the ``boxShadow``, naturally, paints below it.
warning: 'border' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:23:11-23:17
21 | /// controlled by the ``DecorationImage`` class.
22 | ///
23 + /// The ``border`` paints over the body; the ``boxShadow``, naturally, paints below it.
24 | public class BoxDecoration: Decoration {
25 | public init(
warning: 'boxShadow' doesn't exist at '/Shaft/BoxDecoration'
--> Sources/Shaft/Painting/BoxDecoration.swift:23:48-23:57
21 | /// controlled by the ``DecorationImage`` class.
22 | ///
23 + /// The ``border`` paints over the body; the ``boxShadow``, naturally, paints below it.
24 | public class BoxDecoration: Decoration {
25 | public init(
warning: 'WidgetSpan' doesn't exist at '/Shaft/PlaceholderDimensions'
--> Sources/Shaft/Painting/TextPainter.swift:52:66-52:76
50 | ///
51 | /// Placeholders specify an empty space in the text layout, which is used
52 + /// to later render arbitrary inline widgets into defined by a ``WidgetSpan``.
53 | ///
54 | /// See also:
warning: 'WidgetSpan' doesn't exist at '/Shaft/PlaceholderDimensions'
--> Sources/Shaft/Painting/TextPainter.swift:56:10-56:20
54 | /// See also:
55 | ///
56 + /// * ``WidgetSpan``, a subclass of ``InlineSpan`` and ``PlaceholderSpan`` that
57 | /// represents an inline widget embedded within text. The space this
58 | /// widget takes is indicated by a placeholder.
warning: 'WidgetSpan' doesn't exist at '/Shaft/TextPainter/text'
--> Sources/Shaft/Painting/TextPainter.swift:161:49-161:59
159 | ///
160 | /// The ``InlineSpan`` this provides is in the form of a tree that may contain
161 + /// multiple instances of [TextSpan]s and ``WidgetSpan``s. To obtain a plain text
162 | /// representation of the contents of this [TextPainter], use [plainText].
163 | public var text: InlineSpan? {
warning: 'merge' doesn't exist at '/Shaft/TextStyle/inherit'
--> Sources/Shaft/Painting/TextStyle.swift:62:42-62:47
60 |
61 | /// Whether null values in this ``TextStyle`` can be replaced with their value
62 + /// in another ``TextStyle`` using ``merge``.
63 | ///
64 | /// The ``merge`` operation is not commutative: the ``inherit`` value of the
warning: 'merge' doesn't exist at '/Shaft/TextStyle/inherit'
--> Sources/Shaft/Painting/TextStyle.swift:64:15-64:20
62 | /// in another ``TextStyle`` using ``merge``.
63 | ///
64 + /// The ``merge`` operation is not commutative: the ``inherit`` value of the
65 | /// method argument decides whether the two ``TextStyle``s can be combined
66 | /// together. If it is false, the method argument ``TextStyle`` will be returned.
warning: 'merge' doesn't exist at '/Shaft/TextStyle/color'
--> Sources/Shaft/Painting/TextStyle.swift:89:14-89:19
87 | /// is shorthand for `Paint()..color = color`.
88 | ///
89 + /// In ``merge``, [apply], and [lerp], conflicts between [color] and [foreground]
90 | /// specification are resolved in [foreground]'s favor - i.e. if [foreground] is
91 | /// specified in one place, it will dominate [color] in another.
warning: 'merge' doesn't exist at '/Shaft/TextStyle/backgroundColor'
--> Sources/Shaft/Painting/TextStyle.swift:100:14-100:19
98 | /// `background: Paint()..color = backgroundColor`.
99 | ///
100 + /// In ``merge``, [apply], and [lerp], conflicts between [backgroundColor] and [background]
101 | /// specification are resolved in [background]'s favor - i.e. if [background] is
102 | /// specified in one place, it will dominate [color] in another.
warning: 'merge' doesn't exist at '/Shaft/TextStyle/foreground'
--> Sources/Shaft/Painting/TextStyle.swift:228:14-228:19
226 | /// is shorthand for `Paint()..color = color`.
227 | ///
228 + /// In ``merge``, [apply], and [lerp], conflicts between [color] and [foreground]
229 | /// specification are resolved in [foreground]'s favor - i.e. if [foreground] is
230 | /// specified in one place, it will dominate [color] in another.
warning: 'merge' doesn't exist at '/Shaft/TextStyle/background'
--> Sources/Shaft/Painting/TextStyle.swift:244:14-244:19
242 | /// `background: Paint()..color = backgroundColor`.
243 | ///
244 + /// In ``merge``, [apply], and [lerp], conflicts between [backgroundColor] and
245 | /// [background] specification are resolved in [background]'s favor - i.e. if
246 | /// [background] is specified in one place, it will dominate [backgroundColor]
warning: 'merge' doesn't exist at '/Shaft/TextStyle/debugLabel'
--> Sources/Shaft/Painting/TextStyle.swift:278:25-278:30
276 | /// This property is maintained only in debug builds.
277 | ///
278 + /// When merging (``merge``), copying ([copyWith]), modifying using [apply], or
279 | /// interpolating ([lerp]), the label of the resulting style is marked with
280 | /// the debug labels of the original styles. This helps figuring out where a
warning: 'x' doesn't exist at '/Shaft/Simulation'
--> Sources/Shaft/Physics/Simulation.swift:6:33-6:34
4 | /// forces are being applied, and exposes:
5 | ///
6 + /// * The object's position, ``x``
7 | /// * The object's velocity, ``dx``
8 | /// * Whether the simulation is "done", ``isDone``
warning: 'dx' doesn't exist at '/Shaft/Simulation'
--> Sources/Shaft/Physics/Simulation.swift:7:33-7:35
5 | ///
6 | /// * The object's position, ``x``
7 + /// * The object's velocity, ``dx``
8 | /// * Whether the simulation is "done", ``isDone``
9 | ///
warning: 'isDone' doesn't exist at '/Shaft/Simulation'
--> Sources/Shaft/Physics/Simulation.swift:8:44-8:50
6 | /// * The object's position, ``x``
7 | /// * The object's velocity, ``dx``
8 + /// * Whether the simulation is "done", ``isDone``
| ╰─suggestion: Replace 'isDone' with 'isDone(_:)'
9 | ///
10 | /// A simulation is generally "done" if the object has, to a given ``tolerance``,
warning: 'x' doesn't exist at '/Shaft/Simulation'
--> Sources/Shaft/Physics/Simulation.swift:13:11-13:12
11 | /// come to a complete rest.
12 | ///
13 + /// The ``x``, ``dx``, and ``isDone`` functions take a time argument which specifies
14 | /// the time for which they are to be evaluated. In principle, simulations can
15 | /// be stateless, and thus can be queried with arbitrary times. In practice,
warning: 'dx' doesn't exist at '/Shaft/Simulation'
--> Sources/Shaft/Physics/Simulation.swift:13:18-13:20
11 | /// come to a complete rest.
12 | ///
13 + /// The ``x``, ``dx``, and ``isDone`` functions take a time argument which specifies
14 | /// the time for which they are to be evaluated. In principle, simulations can
15 | /// be stateless, and thus can be queried with arbitrary times. In practice,
warning: 'isDone' doesn't exist at '/Shaft/Simulation'
--> Sources/Shaft/Physics/Simulation.swift:13:30-13:36
11 | /// come to a complete rest.
12 | ///
13 + /// The ``x``, ``dx``, and ``isDone`` functions take a time argument which specifies
| ╰─suggestion: Replace 'isDone' with 'isDone(_:)'
14 | /// the time for which they are to be evaluated. In principle, simulations can
15 | /// be stateless, and thus can be queried with arbitrary times. In practice,
warning: 'isDone' doesn't exist at '/Shaft/SpringSimulation/tolerance'
--> Sources/Shaft/Physics/Simulation.swift:37:26-37:32
35 |
36 | /// How close to the actual end of the simulation a value at a particular time
37 + /// must be before ``isDone`` considers the simulation to be "done".
38 | ///
39 | /// A simulation with an asymptotic curve would never technically be "done",
warning: 'isDone' doesn't exist at '/Shaft/Simulation/tolerance'
--> Sources/Shaft/Physics/Simulation.swift:37:26-37:32
35 |
36 | /// How close to the actual end of the simulation a value at a particular time
37 + /// must be before ``isDone`` considers the simulation to be "done".
38 | ///
39 | /// A simulation with an asymptotic curve would never technically be "done",
warning: 'AnimatedBuilder' doesn't exist at '/Shaft/SpringSimulation'
--> Sources/Shaft/Physics/SpringSimulation.swift:93:58-93:73
91 | /// Models a particle attached to a spring that follows Hooke's law.
92 | ///
93 + /// This ``AnimationController`` could be used with an ``AnimatedBuilder`` to
94 | /// animate the position of a child as if it were attached to a spring.
95 | public struct SpringSimulation: Simulation {
warning: 'ContainerRenderObjectMixin' doesn't exist at '/Shaft/ContainerBoxParentData'
--> Sources/Shaft/Rendering/RenderBox.swift:17:7-17:33
15 |
16 | /// Abstract ``ParentData`` subclass for ``RenderBox`` subclasses that want the
17 + /// ``ContainerRenderObjectMixin``.
18 | ///
19 | /// This is a convenience class that mixes in the relevant classes with
warning: 'width' doesn't exist at '/Shaft/Size'
--> Sources/Shaft/Rendering/RenderBox.swift:31:30-31:35
29 | /// relations hold:
30 | ///
31 + /// * ``minWidth`` <= ``Size/width`` <= ``maxWidth``
32 | /// * ``minHeight`` <= ``Size/height`` <= ``maxHeight``
33 | public struct BoxConstraints: Constraints, Equatable {
warning: 'height' doesn't exist at '/Shaft/Size'
--> Sources/Shaft/Rendering/RenderBox.swift:32:31-32:37
30 | ///
31 | /// * ``minWidth`` <= ``Size/width`` <= ``maxWidth``
32 + /// * ``minHeight`` <= ``Size/height`` <= ``maxHeight``
33 | public struct BoxConstraints: Constraints, Equatable {
34 | /// Creates box constraints with the given constraints.
warning: 'constrain' doesn't exist at '/Shaft/BoxConstraints/constrainDimensions(width:height:)'
--> Sources/Shaft/Rendering/RenderBox.swift:171:52-171:61
169 | /// possible to the given width and height.
170 | ///
171 + /// When you already have a ``Size``, prefer ``constrain``, which applies the same
172 | /// algorithm to a ``Size`` directly.
173 | public func constrainDimensions(width: Float, height: Float) -> Size {
warning: 'enforce' doesn't exist at '/Shaft/BoxConstraints/hasInfiniteWidth'
--> Sources/Shaft/Rendering/RenderBox.swift:244:74-244:81
242 | /// Such a constraint is used to indicate that a box should grow as large as
243 | /// some other constraint (in this case, horizontally). If constraints are
244 + /// infinite, then they must have other (non-infinite) constraints ``enforce``d
245 | /// upon them, or must be ``tighten``ed, before they can be used to derive a
246 | /// ``Size`` for a ``RenderBox/size``.
warning: 'tighten' doesn't exist at '/Shaft/BoxConstraints/hasInfiniteWidth'
--> Sources/Shaft/Rendering/RenderBox.swift:245:33-245:40
243 | /// some other constraint (in this case, horizontally). If constraints are
244 | /// infinite, then they must have other (non-infinite) constraints ``enforce``d
245 + /// upon them, or must be ``tighten``ed, before they can be used to derive a
246 | /// ``Size`` for a ``RenderBox/size``.
247 | ///
warning: 'enforce' doesn't exist at '/Shaft/BoxConstraints/hasInfiniteHeight'
--> Sources/Shaft/Rendering/RenderBox.swift:261:74-261:81
259 | /// Such a constraint is used to indicate that a box should grow as large as
260 | /// some other constraint (in this case, vertically). If constraints are
261 + /// infinite, then they must have other (non-infinite) constraints ``enforce``d
262 | /// upon them, or must be ``tighten``ed, before they can be used to derive a
263 | /// ``Size`` for a ``RenderBox/size``.
warning: 'tighten' doesn't exist at '/Shaft/BoxConstraints/hasInfiniteHeight'
--> Sources/Shaft/Rendering/RenderBox.swift:262:33-262:40
260 | /// some other constraint (in this case, vertically). If constraints are
261 | /// infinite, then they must have other (non-infinite) constraints ``enforce``d
262 + /// upon them, or must be ``tighten``ed, before they can be used to derive a
263 | /// ``Size`` for a ``RenderBox/size``.
264 | ///
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult'
--> Sources/Shaft/Rendering/RenderBox.swift:294:32-294:53
292 | /// Method signature for hit testing a ``RenderBox``.
293 | ///
294 + /// Used by ``BoxHitTestResult/addWithPaintTransform`` to hit test children
| ╰─suggestion: Replace 'addWithPaintTransform' with 'addWithPaintTransform(transform:position:hitTest:)'
295 | /// of a ``RenderBox``.
296 | ///
warning: 'hitTest' doesn't exist at '/Shaft/RenderBox'
--> Sources/Shaft/Rendering/RenderBox.swift:299:20-299:27
297 | /// See also:
298 | ///
299 + /// * ``RenderBox/hitTest``, which documents more details around hit testing
| ├─suggestion: Replace 'hitTest' with 'hitTestSelf(_:)'
| ├─suggestion: Replace 'hitTest' with 'hitTest(_:position:)'
| ╰─suggestion: Replace 'hitTest' with 'hitTestChildren(_:position:)'
300 | /// ``RenderBox``es.
301 | public typealias BoxHitTest = (BoxHitTestResult, Offset) -> Bool
warning: 'hitTestBoxChild' doesn't exist at '/Shaft/RenderSliverSingleBoxAdapter'
--> Sources/Shaft/Rendering/RenderBox.swift:306:44-306:59
304 | /// managed position (one that is passed out-of-band).
305 | ///
306 + /// Used by ``RenderSliverSingleBoxAdapter/hitTestBoxChild`` to hit test
| ╰─suggestion: Replace 'hitTestBoxChild' with 'hitTestChildren(_:mainAxisPosition:crossAxisPosition:)'
307 | /// ``RenderBox`` children of a ``RenderSliver``.
308 | ///
warning: 'hitTest' doesn't exist at '/Shaft/RenderBox'
--> Sources/Shaft/Rendering/RenderBox.swift:311:20-311:27
309 | /// See also:
310 | ///
311 + /// * ``RenderBox/hitTest``, which documents more details around hit testing
| ├─suggestion: Replace 'hitTest' with 'hitTestSelf(_:)'
| ├─suggestion: Replace 'hitTest' with 'hitTest(_:position:)'
| ╰─suggestion: Replace 'hitTest' with 'hitTestChildren(_:position:)'
312 | /// ``RenderBox``es.
313 | public typealias BoxHitTestWithOutOfBandPosition = (BoxHitTestResult) -> Bool
warning: 'hitTest' doesn't exist at '/Shaft/RenderBox'
--> Sources/Shaft/Rendering/RenderBox.swift:317:58-317:65
315 | /// The result of performing a hit test on ``RenderBox``es.
316 | ///
317 + /// An instance of this class is provided to ``RenderBox/hitTest`` to record the
| ├─suggestion: Replace 'hitTest' with 'hitTestSelf(_:)'
| ├─suggestion: Replace 'hitTest' with 'hitTest(_:position:)'
| ╰─suggestion: Replace 'hitTest' with 'hitTestChildren(_:position:)'
318 | /// result of the hit test.
319 | public class BoxHitTestResult: HitTestResult {
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithPaintOffset(offset:position:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:345:57-345:78
343 | /// `position` as argument.
344 | ///
345 + /// This method can be used as a convenience over ``addWithPaintTransform`` if
346 | /// a parent paints a child at an `offset`.
347 | ///
warning: 'zero' doesn't exist at '/Shaft/Offset'
--> Sources/Shaft/Rendering/RenderBox.swift:348:61-348:65
346 | /// a parent paints a child at an `offset`.
347 | ///
348 + /// A null value for `offset` is treated as if ``Offset/zero`` was provided.
349 | ///
350 | /// The function returns the return value of the `hitTest` callback.
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithPaintOffset(offset:position:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:354:14-354:35
352 | /// See also:
353 | ///
354 + /// * ``addWithPaintTransform``, which takes a generic paint transform matrix and
355 | /// documents the intended usage of this API in more detail.
356 | public func addWithPaintOffset(
warning: 'removePerspectiveTransform' doesn't exist at '/Shaft/PointerEvent'
--> Sources/Shaft/Rendering/RenderBox.swift:381:24-381:50
379 | /// The provided paint `transform` (which describes the transform from the
380 | /// child to the parent in 3D) is processed by
381 + /// ``PointerEvent/removePerspectiveTransform`` to remove the
382 | /// perspective component and inverted before it is used to transform
383 | /// `position` from the coordinate system of the parent to the system of the
warning: 'addWithPaintOffset' doesn't exist at '/Shaft/BoxHitTestResult/addWithPaintTransform(transform:position:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:401:14-401:32
399 | /// See also:
400 | ///
401 + /// * ``addWithPaintOffset``, which can be used for `transform`s that are just
402 | /// simple matrix translations by an ``Offset``.
403 | /// * ``addWithRawTransform``, which takes a transform matrix that is directly
warning: 'addWithRawTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithPaintTransform(transform:position:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:403:14-403:33
401 | /// * ``addWithPaintOffset``, which can be used for `transform`s that are just
402 | /// simple matrix translations by an ``Offset``.
403 + /// * ``addWithRawTransform``, which takes a transform matrix that is directly
404 | /// used to transform the position without any pre-processing.
405 | public func addWithPaintTransform(
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithRawTransform(transform:position:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:432:18-432:39
430 | /// `position` as argument.
431 | ///
432 + /// Unlike ``addWithPaintTransform``, the provided `transform` matrix is used
433 | /// directly to transform `position` without any pre-processing.
434 | ///
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithRawTransform(transform:position:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:442:14-442:35
440 | /// See also:
441 | ///
442 + /// * ``addWithPaintTransform``, which accomplishes the same thing, but takes a
443 | /// _paint_ transform matrix.
444 | public func addWithRawTransform(
warning: 'addWithPaintOffset' doesn't exist at '/Shaft/BoxHitTestResult/addWithOutOfBandPosition(paintOffset:paintTransform:rawTransform:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:474:14-474:32
472 | ///
473 | /// * `paintOffset` has the semantics of the `offset` passed to
474 + /// ``addWithPaintOffset``.
475 | ///
476 | /// * `paintTransform` has the semantics of the `transform` passed to
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithOutOfBandPosition(paintOffset:paintTransform:rawTransform:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:477:14-477:35
475 | ///
476 | /// * `paintTransform` has the semantics of the `transform` passed to
477 + /// ``addWithPaintTransform``, except that it must be invertible; it
478 | /// is the responsibility of the caller to ensure this.
479 | ///
warning: 'addWithRawTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithOutOfBandPosition(paintOffset:paintTransform:rawTransform:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:481:14-481:33
479 | ///
480 | /// * `rawTransform` has the semantics of the `transform` passed to
481 + /// ``addWithRawTransform``.
482 | ///
483 | /// Exactly one of these must be non-null.
warning: 'addWithPaintTransform' doesn't exist at '/Shaft/BoxHitTestResult/addWithOutOfBandPosition(paintOffset:paintTransform:rawTransform:hitTest:)'
--> Sources/Shaft/Rendering/RenderBox.swift:487:14-487:35
485 | /// See also:
486 | ///
487 + /// * ``addWithPaintTransform``, which takes a generic paint transform matrix and
488 | /// documents the intended usage of this API in more detail.
489 | public func addWithOutOfBandPosition(
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderOffstage/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:580:42-580:62
578 | }
579 |
580 + /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 | /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderPositionedBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:580:42-580:62
578 | }
579 |
580 + /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 | /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:580:42-580:62
578 | }
579 |
580 + /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 | /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderProxyBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:580:42-580:62
578 | }
579 |
580 + /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 | /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderViewportBase/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:580:42-580:62
578 | }
579 |
580 + /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 | /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:580:42-580:62
578 | }
579 |
580 + /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 | /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderOffstage/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:581:44-581:64
579 |
580 | /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 + /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
583 | return 0.0
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderPositionedBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:581:44-581:64
579 |
580 | /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 + /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
583 | return 0.0
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:581:44-581:64
579 |
580 | /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 + /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
583 | return 0.0
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderProxyBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:581:44-581:64
579 |
580 | /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 + /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
583 | return 0.0
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderViewportBase/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:581:44-581:64
579 |
580 | /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 + /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
583 | return 0.0
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMinIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:581:44-581:64
579 |
580 | /// Computes the value returned by ``getMinIntrinsicWidth``. Do not call this
581 + /// function directly, instead, call ``getMinIntrinsicWidth``.
582 | open func computeMinIntrinsicWidth(_ height: Float) -> Float {
583 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderBox/getMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:588:32-588:53
586 | /// Returns the smallest width beyond which increasing the width never
587 | /// decreases the preferred height. The preferred height is the value that
588 + /// would be returned by ``getMinIntrinsicHeight`` for that width.
589 | public final func getMaxIntrinsicWidth(_ height: Float) -> Float {
590 | assert(height >= 0.0, "The height argument to getMaxIntrinsicWidth() must be positive.")
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderOffstage/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:598:42-598:62
596 | }
597 |
598 + /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 | /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderPositionedBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:598:42-598:62
596 | }
597 |
598 + /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 | /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:598:42-598:62
596 | }
597 |
598 + /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 | /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderProxyBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:598:42-598:62
596 | }
597 |
598 + /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 | /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:598:42-598:62
596 | }
597 |
598 + /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 | /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderViewportBase/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:598:42-598:62
596 | }
597 |
598 + /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 | /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderOffstage/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:599:44-599:64
597 |
598 | /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 + /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
601 | return 0.0
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderPositionedBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:599:44-599:64
597 |
598 | /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 + /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
601 | return 0.0
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:599:44-599:64
597 |
598 | /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 + /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
601 | return 0.0
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderProxyBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:599:44-599:64
597 |
598 | /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 + /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
601 | return 0.0
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:599:44-599:64
597 |
598 | /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 + /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
601 | return 0.0
warning: 'getMaxIntrinsicWidth' doesn't exist at '/Shaft/RenderViewportBase/computeMaxIntrinsicWidth(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:599:44-599:64
597 |
598 | /// Computes the value returned by ``getMaxIntrinsicWidth``. Do not call this
599 + /// function directly, instead, call ``getMaxIntrinsicWidth``.
600 | open func computeMaxIntrinsicWidth(_ height: Float) -> Float {
601 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:615:42-615:63
613 | }
614 |
615 + /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 | /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderPositionedBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:615:42-615:63
613 | }
614 |
615 + /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 | /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderOffstage/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:615:42-615:63
613 | }
614 |
615 + /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 | /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderViewportBase/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:615:42-615:63
613 | }
614 |
615 + /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 | /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:615:42-615:63
613 | }
614 |
615 + /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 | /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderProxyBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:615:42-615:63
613 | }
614 |
615 + /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 | /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:616:44-616:65
614 |
615 | /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 + /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
618 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderPositionedBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:616:44-616:65
614 |
615 | /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 + /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
618 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderOffstage/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:616:44-616:65
614 |
615 | /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 + /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
618 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderViewportBase/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:616:44-616:65
614 |
615 | /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 + /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
618 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:616:44-616:65
614 |
615 | /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 + /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
618 | return 0.0
warning: 'getMinIntrinsicHeight' doesn't exist at '/Shaft/RenderProxyBox/computeMinIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:616:44-616:65
614 |
615 | /// Computes the value returned by ``getMinIntrinsicHeight``. Do not call this
616 + /// function directly, instead, call ``getMinIntrinsicHeight``.
617 | open func computeMinIntrinsicHeight(_ width: Float) -> Float {
618 | return 0.0
warning: 'getMinIntrinsicWidth' doesn't exist at '/Shaft/RenderBox/getMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:623:32-623:52
621 | /// Returns the smallest height beyond which increasing the height never
622 | /// decreases the preferred width. The preferred width is the value that
623 + /// would be returned by ``getMinIntrinsicWidth`` for that height.
624 | public final func getMaxIntrinsicHeight(_ width: Float) -> Float {
625 | assert(width >= 0.0, "The width argument to getMaxIntrinsicHeight() must be positive.")
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:633:42-633:63
631 | }
632 |
633 + /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 | /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderViewportBase/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:633:42-633:63
631 | }
632 |
633 + /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 | /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:633:42-633:63
631 | }
632 |
633 + /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 | /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderPositionedBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:633:42-633:63
631 | }
632 |
633 + /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 | /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderProxyBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:633:42-633:63
631 | }
632 |
633 + /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 | /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderOffstage/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:633:42-633:63
631 | }
632 |
633 + /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 | /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:634:44-634:65
632 |
633 | /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 + /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
636 | return 0.0
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderViewportBase/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:634:44-634:65
632 |
633 | /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 + /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
636 | return 0.0
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderFractionallySizedOverflowBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:634:44-634:65
632 |
633 | /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 + /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
636 | return 0.0
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderPositionedBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:634:44-634:65
632 |
633 | /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 + /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
636 | return 0.0
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderProxyBox/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:634:44-634:65
632 |
633 | /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 + /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
636 | return 0.0
warning: 'getMaxIntrinsicHeight' doesn't exist at '/Shaft/RenderOffstage/computeMaxIntrinsicHeight(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:634:44-634:65
632 |
633 | /// Computes the value returned by ``getMaxIntrinsicHeight``. Do not call this
634 + /// function directly, instead, call ``getMaxIntrinsicHeight``.
635 | open func computeMaxIntrinsicHeight(_ width: Float) -> Float {
636 | return 0.0
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderBox/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:639:42-639:54
637 | }
638 |
639 + /// Computes the value returned by ``getDryLayout``. Do not call this
640 | /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderPositionedBox/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:639:42-639:54
637 | }
638 |
639 + /// Computes the value returned by ``getDryLayout``. Do not call this
640 | /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderOffstage/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:639:42-639:54
637 | }
638 |
639 + /// Computes the value returned by ``getDryLayout``. Do not call this
640 | /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderViewport/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:639:42-639:54
637 | }
638 |
639 + /// Computes the value returned by ``getDryLayout``. Do not call this
640 | /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderBox/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:640:44-640:56
638 |
639 | /// Computes the value returned by ``getDryLayout``. Do not call this
640 + /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
642 | return Size.zero
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderPositionedBox/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:640:44-640:56
638 |
639 | /// Computes the value returned by ``getDryLayout``. Do not call this
640 + /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
642 | return Size.zero
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderOffstage/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:640:44-640:56
638 |
639 | /// Computes the value returned by ``getDryLayout``. Do not call this
640 + /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
642 | return Size.zero
warning: 'getDryLayout' doesn't exist at '/Shaft/RenderViewport/computeDryLayout(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:640:44-640:56
638 |
639 | /// Computes the value returned by ``getDryLayout``. Do not call this
640 + /// function directly, instead, call ``getDryLayout``.
641 | open func computeDryLayout(_ constraints: BoxConstraints) -> Size {
642 | return Size.zero
warning: 'computeDryLayout' doesn't exist at '/Shaft/RenderBox/performResize()'
--> Sources/Shaft/Rendering/RenderBox.swift:687:65-687:81
685 | }
686 |
687 + /// By default this method sets ``size`` to the result of ``computeDryLayout``
688 | /// called with the current ``constraints``. Instead of overriding this method,
689 | /// consider overriding ``computeDryLayout``.
warning: 'constraints' doesn't exist at '/Shaft/RenderBox/performResize()'
--> Sources/Shaft/Rendering/RenderBox.swift:688:35-688:46
686 |
687 | /// By default this method sets ``size`` to the result of ``computeDryLayout``
688 + /// called with the current ``constraints``. Instead of overriding this method,
689 | /// consider overriding ``computeDryLayout``.
690 | open override func performResize() {
warning: 'computeDryLayout' doesn't exist at '/Shaft/RenderBox/performResize()'
--> Sources/Shaft/Rendering/RenderBox.swift:689:31-689:47
687 | /// By default this method sets ``size`` to the result of ``computeDryLayout``
688 | /// called with the current ``constraints``. Instead of overriding this method,
689 + /// consider overriding ``computeDryLayout``.
690 | open override func performResize() {
691 | // default behavior for subclasses that have sizedByParent = true
warning: 'position' doesn't exist at '/Shaft/RenderProxyBoxWithHitTestBehavior/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderClipRect/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderTransform/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderStack/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderOffstage/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderBox/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderMouseRegion/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderWrap/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderClipRRect/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:713:54-713:62
711 | /// Returns false if the hit can continue to other objects below this one.
712 | ///
713 + /// The caller is responsible for transforming ``position`` from global
714 | /// coordinates to its location relative to the origin of this ``RenderBox``.
715 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderCustomPaint/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:736:54-736:62
734 | /// on this render object.
735 | ///
736 + /// The caller is responsible for transforming ``position`` from global
737 | /// coordinates to its location relative to the origin of this ``RenderBox``.
738 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderImage/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:736:54-736:62
734 | /// on this render object.
735 | ///
736 + /// The caller is responsible for transforming ``position`` from global
737 | /// coordinates to its location relative to the origin of this ``RenderBox``.
738 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderBox/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:736:54-736:62
734 | /// on this render object.
735 | ///
736 + /// The caller is responsible for transforming ``position`` from global
737 | /// coordinates to its location relative to the origin of this ``RenderBox``.
738 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderProxyBoxWithHitTestBehavior/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:736:54-736:62
734 | /// on this render object.
735 | ///
736 + /// The caller is responsible for transforming ``position`` from global
737 | /// coordinates to its location relative to the origin of this ``RenderBox``.
738 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderParagraph/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:736:54-736:62
734 | /// on this render object.
735 | ///
736 + /// The caller is responsible for transforming ``position`` from global
737 | /// coordinates to its location relative to the origin of this ``RenderBox``.
738 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'position' doesn't exist at '/Shaft/RenderDecoratedBox/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:736:54-736:62
734 | /// on this render object.
735 | ///
736 + /// The caller is responsible for transforming ``position`` from global
737 | /// coordinates to its location relative to the origin of this ``RenderBox``.
738 | /// This ``RenderBox`` is responsible for checking whether the given position is
warning: 'hitTest' doesn't exist at '/Shaft/RenderCustomPaint/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:19-741:26
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderImage/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:19-741:26
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderBox/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:19-741:26
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderProxyBoxWithHitTestBehavior/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:19-741:26
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderParagraph/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:19-741:26
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderDecoratedBox/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:19-741:26
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderCustomPaint/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:48-741:55
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderImage/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:48-741:55
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderBox/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:48-741:55
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderProxyBoxWithHitTestBehavior/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:48-741:55
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderParagraph/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:48-741:55
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'hitTest' doesn't exist at '/Shaft/RenderDecoratedBox/hitTestSelf(_:)'
--> Sources/Shaft/Rendering/RenderBox.swift:741:48-741:55
739 | /// within its bounds.
740 | ///
741 + /// Used by ``hitTest``. If you override ``hitTest`` and do not call this
742 | /// function, then you don't need to implement this function.
743 | open func hitTestSelf(_ position: Offset) -> Bool {
warning: 'position' doesn't exist at '/Shaft/RenderCustomPaint/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderTransform/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderParagraph/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderViewportBase/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderShiftedBox/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderFlex/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderBox/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'position' doesn't exist at '/Shaft/RenderProxyBox/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:757:54-757:62
755 | /// visually "on top" (i.e., paints later).
756 | ///
757 + /// The caller is responsible for transforming ``position`` from global
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
warning: 'hitTest' doesn't exist at '/Shaft/RenderCustomPaint/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderTransform/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderParagraph/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderViewportBase/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderShiftedBox/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderFlex/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderBox/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'hitTest' doesn't exist at '/Shaft/RenderProxyBox/hitTestChildren(_:position:)'
--> Sources/Shaft/Rendering/RenderBox.swift:760:56-760:63
758 | /// coordinates to its location relative to the origin of this ``RenderBox``.
759 | /// Likewise, this ``RenderBox`` is responsible for transforming the position
760 + /// that it passes to its children when it calls ``hitTest`` on each child.
761 | open func hitTestChildren(_ result: HitTestResult, position: Offset) -> Bool {
762 | return false
warning: 'parentData' doesn't exist at '/Shaft/RenderProxyBox/applyPaintTransform(_:transform:)'
--> Sources/Shaft/Rendering/RenderBox.swift:774:19-774:29
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'parentData' doesn't exist at '/Shaft/RenderViewport/applyPaintTransform(_:transform:)'
--> Sources/Shaft/Rendering/RenderBox.swift:774:19-774:29
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'parentData' doesn't exist at '/Shaft/RenderShrinkWrappingViewport/applyPaintTransform(_:transform:)'
--> Sources/Shaft/Rendering/RenderBox.swift:774:19-774:29
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'parentData' doesn't exist at '/Shaft/RenderTransform/applyPaintTransform(_:transform:)'
--> Sources/Shaft/Rendering/RenderBox.swift:774:19-774:29
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'parentData' doesn't exist at '/Shaft/RenderBox/applyPaintTransform(_:transform:)'
--> Sources/Shaft/Rendering/RenderBox.swift:774:19-774:29
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'offset' doesn't exist at '/Shaft/BoxParentData'
--> Sources/Shaft/Rendering/RenderBox.swift:774:55-774:61
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'offset' doesn't exist at '/Shaft/BoxParentData'
--> Sources/Shaft/Rendering/RenderBox.swift:774:55-774:61
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'offset' doesn't exist at '/Shaft/BoxParentData'
--> Sources/Shaft/Rendering/RenderBox.swift:774:55-774:61
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'offset' doesn't exist at '/Shaft/BoxParentData'
--> Sources/Shaft/Rendering/RenderBox.swift:774:55-774:61
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'offset' doesn't exist at '/Shaft/BoxParentData'
--> Sources/Shaft/Rendering/RenderBox.swift:774:55-774:61
772 | /// The ``RenderBox`` implementation takes care of adjusting the matrix for the
773 | /// position of the given child as determined during layout and stored on the
774 + /// child's ``parentData`` in the ``BoxParentData/offset`` field.
775 | open override func applyPaintTransform(_ child: RenderObject, transform: inout Matrix4x4f) {
776 | assert(child.parent === self)
warning: 'transformPoint' doesn't exist at '/Shaft/MatrixUtils'
--> Sources/Shaft/Rendering/RenderBox.swift:796:53-796:67
794 | ///
795 | /// This method will un-project the point from the screen onto the widget,
796 + /// which makes it different from ``MatrixUtils/transformPoint``.
| ├─suggestion: Replace 'transformPoint' with 'transformPoint(_:_:)'
| ╰─suggestion: Replace 'transformPoint' with 'transformRect(_:_:)'
797 | ///
798 | /// If the transform from global coordinates to local coordinates is
warning: 'zero' doesn't exist at '/Shaft/Offset'
--> Sources/Shaft/Rendering/RenderBox.swift:799:52-799:56
797 | ///
798 | /// If the transform from global coordinates to local coordinates is
799 + /// degenerate, this function returns ``Offset/zero``.
800 | ///
801 | /// If `ancestor` is non-null, this function converts the given point from
warning: 'getTransformTo' doesn't exist at '/Shaft/RenderBox/globalToLocal(_:ancestor:)'
--> Sources/Shaft/Rendering/RenderBox.swift:805:50-805:64
803 | /// render object) instead of from the global coordinate system.
804 | ///
805 + /// This method is implemented in terms of ``getTransformTo``.
806 | public func globalToLocal(_ point: Offset, ancestor: RenderObject? = nil) -> Offset {
807 | var transform = getTransformTo(ancestor)
warning: 'getTransformTo' doesn't exist at '/Shaft/RenderBox/localToGlobal(_:ancestor:)'
--> Sources/Shaft/Rendering/RenderBox.swift:841:50-841:64
839 | /// object) instead of to the global coordinate system.
840 | ///
841 + /// This method is implemented in terms of ``getTransformTo``. If the transform
842 | /// matrix puts the given `point` on the line at infinity (for instance, when
843 | /// the transform matrix is the zero matrix), this method returns (NaN, NaN).
warning: 'paint' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:10:21-10:26
8 | /// To implement a custom painter, either subclass or implement this interface
9 | /// to define your custom paint delegate. ``CustomPainter`` subclasses must
10 + /// implement the ``paint`` and ``shouldRepaint`` methods, and may optionally also
| ├─suggestion: Replace 'paint' with 'repaint'
| ╰─suggestion: Replace 'paint' with 'paint(canvas:size:)'
11 | /// implement the ``hitTest`` and ``shouldRebuildSemantics`` methods, and the
12 | /// ``semanticsBuilder`` getter.
warning: 'shouldRepaint' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:10:35-10:48
8 | /// To implement a custom painter, either subclass or implement this interface
9 | /// to define your custom paint delegate. ``CustomPainter`` subclasses must
10 + /// implement the ``paint`` and ``shouldRepaint`` methods, and may optionally also
| ╰─suggestion: Replace 'shouldRepaint' with 'shouldRepaint(_:)'
11 | /// implement the ``hitTest`` and ``shouldRebuildSemantics`` methods, and the
12 | /// ``semanticsBuilder`` getter.
warning: 'hitTest' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:11:21-11:28
9 | /// to define your custom paint delegate. ``CustomPainter`` subclasses must
10 | /// implement the ``paint`` and ``shouldRepaint`` methods, and may optionally also
11 + /// implement the ``hitTest`` and ``shouldRebuildSemantics`` methods, and the
| ╰─suggestion: Replace 'hitTest' with 'hitTest(_:)'
12 | /// ``semanticsBuilder`` getter.
13 | ///
warning: 'shouldRebuildSemantics' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:11:37-11:59
9 | /// to define your custom paint delegate. ``CustomPainter`` subclasses must
10 | /// implement the ``paint`` and ``shouldRepaint`` methods, and may optionally also
11 + /// implement the ``hitTest`` and ``shouldRebuildSemantics`` methods, and the
| ╰─suggestion: Replace 'shouldRebuildSemantics' with 'shouldRepaint(_:)'
12 | /// ``semanticsBuilder`` getter.
13 | ///
warning: 'semanticsBuilder' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:12:7-12:23
10 | /// implement the ``paint`` and ``shouldRepaint`` methods, and may optionally also
11 | /// implement the ``hitTest`` and ``shouldRebuildSemantics`` methods, and the
12 + /// ``semanticsBuilder`` getter.
13 | ///
14 | /// The ``paint`` method is called whenever the custom object needs to be repainted.
warning: 'paint' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:14:11-14:16
12 | /// ``semanticsBuilder`` getter.
13 | ///
14 + /// The ``paint`` method is called whenever the custom object needs to be repainted.
| ├─suggestion: Replace 'paint' with 'repaint'
| ╰─suggestion: Replace 'paint' with 'paint(canvas:size:)'
15 | ///
16 | /// The ``shouldRepaint`` method is called when a new instance of the class
warning: 'shouldRepaint' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:16:11-16:24
14 | /// The ``paint`` method is called whenever the custom object needs to be repainted.
15 | ///
16 + /// The ``shouldRepaint`` method is called when a new instance of the class
| ╰─suggestion: Replace 'shouldRepaint' with 'shouldRepaint(_:)'
17 | /// is provided, to check if the new instance actually represents different
18 | /// information.
warning: 'hitTest' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:35:11-35:18
33 | /// animation ticks, avoiding both the build and layout phases of the pipeline.
34 | ///
35 + /// The ``hitTest`` method is called when the user interacts with the underlying
| ╰─suggestion: Replace 'hitTest' with 'hitTest(_:)'
36 | /// render object, to determine if the user hit the object or missed it.
37 | ///
warning: 'semanticsBuilder' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:38:11-38:27
36 | /// render object, to determine if the user hit the object or missed it.
37 | ///
38 + /// The ``semanticsBuilder`` is called whenever the custom object needs to rebuild
39 | /// its semantics information.
40 | ///
warning: 'shouldRebuildSemantics' doesn't exist at '/Shaft/CustomPainter'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:41:11-41:33
39 | /// its semantics information.
40 | ///
41 + /// The ``shouldRebuildSemantics`` method is called when a new instance of the
| ╰─suggestion: Replace 'shouldRebuildSemantics' with 'shouldRepaint(_:)'
42 | /// class is provided, to check if the new instance contains different
43 | /// information that affects the semantics tree.
warning: 'paint' doesn't exist at '/Shaft/CustomPainter/paint(canvas:size:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:136:49-136:54
134 | /// operation is inside the bounds (e.g., drawing a rectangle whose size is
135 | /// determined by user inputs). In that case, consider calling
136 + /// [Canvas.clipRect] at the beginning of ``paint`` so everything that follows
137 | /// will be guaranteed to only draw within the clipped area.
138 | ///
warning: 'paint' doesn't exist at '/Shaft/CustomPainter/paint(canvas:size:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:155:33-155:38
153 | /// paint delegate, giving it the new [ImageInfo] object.
154 | ///
155 + /// 3. In your delegate's ``paint`` method, call the [Canvas.drawImage],
156 | /// [Canvas.drawImageRect], or [Canvas.drawImageNine] methods to paint the
157 | /// [ImageInfo.image] object, applying the [ImageInfo.scale] value to
warning: 'paint' doesn't exist at '/Shaft/CustomPainter/shouldRepaint(_:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:171:49-171:54
169 | /// false.
170 | ///
171 + /// If the method returns false, then the ``paint`` call might be optimized
172 | /// away.
173 | ///
warning: 'paint' doesn't exist at '/Shaft/CustomPainter/shouldRepaint(_:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:174:34-174:39
172 | /// away.
173 | ///
174 + /// It's possible that the ``paint`` method will get called even if
175 | /// ``shouldRepaint`` returns false (e.g. if an ancestor or descendant needed to
176 | /// be repainted). It's also possible that the ``paint`` method will get called
warning: 'shouldRepaint' doesn't exist at '/Shaft/CustomPainter/shouldRepaint(_:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:175:11-175:24
173 | ///
174 | /// It's possible that the ``paint`` method will get called even if
175 + /// ``shouldRepaint`` returns false (e.g. if an ancestor or descendant needed to
176 | /// be repainted). It's also possible that the ``paint`` method will get called
177 | /// without ``shouldRepaint`` being called at all (e.g. if the box changes
warning: 'paint' doesn't exist at '/Shaft/CustomPainter/shouldRepaint(_:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:176:54-176:59
174 | /// It's possible that the ``paint`` method will get called even if
175 | /// ``shouldRepaint`` returns false (e.g. if an ancestor or descendant needed to
176 + /// be repainted). It's also possible that the ``paint`` method will get called
177 | /// without ``shouldRepaint`` being called at all (e.g. if the box changes
178 | /// size).
warning: 'shouldRepaint' doesn't exist at '/Shaft/CustomPainter/shouldRepaint(_:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:177:19-177:32
175 | /// ``shouldRepaint`` returns false (e.g. if an ancestor or descendant needed to
176 | /// be repainted). It's also possible that the ``paint`` method will get called
177 + /// without ``shouldRepaint`` being called at all (e.g. if the box changes
178 | /// size).
179 | ///
warning: 'paint' doesn't exist at '/Shaft/CustomPainter/hitTest(_:)'
--> Sources/Shaft/Rendering/RenderCustomPaint.swift:192:11-192:16
190 | ///
191 | /// The given point is relative to the same coordinate space as the last
192 + /// ``paint`` call.
193 | ///
194 | /// The default behavior is to consider all points to be hits for
warning: 'EditableText.minLines' doesn't exist at '/Shaft/RenderEditable/minLines'
--> Sources/Shaft/Rendering/RenderEditable.swift:435:16-435:37
433 | }
434 |
435 + /// See: ``EditableText.minLines``.
436 | public var minLines: Int? {
437 | didSet {
warning: 'EditableText.expands' doesn't exist at '/Shaft/RenderEditable/expands'
--> Sources/Shaft/Rendering/RenderEditable.swift:444:16-444:36
442 | }
443 |
444 + /// See: ``EditableText.expands``.
445 | public var expands: Bool = false {
446 | didSet {
warning: 'addLayer' doesn't exist at '/Shaft/PaintingContext/pushLayer(_:_:_:childPaintBounds:)'
--> Sources/Shaft/Rendering/RenderObject.swift:163:14-163:22
161 | /// See also:
162 | ///
163 + /// * ``addLayer``, for pushing a layer without painting further contents
164 | /// within it.
165 | public func pushLayer(
warning: 'layer' doesn't exist at '/Shaft/RenderObject'
--> Sources/Shaft/Rendering/RenderObject.swift:233:24-233:29
231 | /// returns null, indicating that a layer is no longer necessary. If a
232 | /// render object calling this method stores the `oldLayer` in its
233 + /// ``RenderObject/layer`` field, it should set that field to null.
234 | ///
235 | /// When `needsCompositing` is false, this method will use a more efficient
warning: 'painter' doesn't exist at '/Shaft/PaintingContext/pushClipRect(needsCompositing:offset:clipRect:clipBehavior:painter:oldLayer:)'
--> Sources/Shaft/Rendering/RenderObject.swift:245:44-245:51
243 | ///
244 | /// The `clipRect` is the rectangle (in the caller's coordinate system) to
245 + /// use to clip the painting done by ``painter``. It should not include the
246 | /// `offset`.
247 | ///
warning: 'pushClipRect' doesn't exist at '/Shaft/PaintingContext/pushClipRect(needsCompositing:offset:clipRect:clipBehavior:painter:oldLayer:)'
--> Sources/Shaft/Rendering/RenderObject.swift:249:57-249:69
247 | ///
248 | /// The `painter` callback will be called while the `clipRect` is applied.
249 + /// It is called synchronously during the call to ``pushClipRect``.
250 | ///
251 | /// The `clipBehavior` argument controls how the rectangle is clipped.
warning: 'layer' doesn't exist at '/Shaft/RenderObject'
--> Sources/Shaft/Rendering/RenderObject.swift:256:70-256:75
254 | /// the `oldLayer` argument, specify the layer created in the previous
255 | /// frame. This gives the engine more information for performance
256 + /// optimizations. Typically this is the value of ``RenderObject/layer`` that
257 | /// a render object creates once, then reuses for all subsequent frames
258 | /// until a layer is no longer needed (e.g. the render object no longer
warning: 'PipelineOwner' doesn't exist at '/Shaft/RenderObject/invokeLayoutCallback(_:)'
--> Sources/Shaft/Rendering/RenderObject.swift:1029:23-1029:36
1027 | /// Allows mutations to be made to this object's child list (and any
1028 | /// descendants) as well as to any other dirty nodes in the render tree owned
1029 + /// by the same ``PipelineOwner`` as this object. The `callback` argument is
1030 | /// invoked synchronously, and the mutations are allowed only during that
1031 | /// callback's execution.
warning: 'child' doesn't exist at '/Shaft/RenderObjectWithChild/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderParagraph/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderEditable/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderSliverCrossAxisGroup/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderSliverMainAxisGroup/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderStack/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderFlex/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderViewportBase/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderWrap/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'child' doesn't exist at '/Shaft/RenderSliverMultiBoxAdaptor/redepthChildren()'
--> Sources/Shaft/Rendering/RenderObject.swift:1459:43-1459:48
1457 | func visitChildren(visitor: (ChildType) -> Void)
1458 |
1459 + /// Adjust the [depth] of the given ``child`` to be greater than this node's
1460 | /// own [depth].
1461 | ///
warning: 'RenderProxySliver' doesn't exist at '/Shaft/RenderProxyBox'
--> Sources/Shaft/Rendering/RenderProxyBox.swift:25:10-25:27
23 | /// See also:
24 | ///
25 + /// * ``RenderProxySliver``, a base class for render slivers that resemble their
26 | /// children.
27 | open class RenderProxyBox: RenderBox, RenderObjectWithSingleChild {
warning: 'child' doesn't exist at '/Shaft/RenderConstrainedBox'
--> Sources/Shaft/Rendering/RenderProxyBox.swift:154:34-154:39
152 | /// as well.
153 | ///
154 + /// For example, if you wanted ``child`` to have a minimum height of 50.0 logical
155 | /// pixels, you could use `const BoxConstraints(minHeight: 50.0)` as the
156 | /// ``additionalConstraints``.
warning: 'child' doesn't exist at '/Shaft/RenderConstrainedBox/additionalConstraints'
--> Sources/Shaft/Rendering/RenderProxyBox.swift:166:46-166:51
164 | }
165 |
166 + /// Additional constraints to apply to ``child`` during layout.
167 | public var additionalConstraints: BoxConstraints {
168 | didSet {
warning: 'RenderConstraintsTransformBox' doesn't exist at '/Shaft/RenderShiftedBox'
--> Sources/Shaft/Rendering/RenderShiftedBox.swift:12:15-12:44
10 | /// ``BoxConstraints``.
11 | ///
12 + /// Used by ``RenderConstraintsTransformBox`` and ``ConstraintsTransformBox``.
13 | /// Typically the caller requires the returned ``BoxConstraints`` to be
14 | /// ``BoxConstraints/isNormalized``.
warning: 'ConstraintsTransformBox' doesn't exist at '/Shaft/RenderShiftedBox'
--> Sources/Shaft/Rendering/RenderShiftedBox.swift:12:53-12:76
10 | /// ``BoxConstraints``.
11 | ///
12 + /// Used by ``RenderConstraintsTransformBox`` and ``ConstraintsTransformBox``.
13 | /// Typically the caller requires the returned ``BoxConstraints`` to be
14 | /// ``BoxConstraints/isNormalized``.
warning: 'isNormalized' doesn't exist at '/Shaft/BoxConstraints'
--> Sources/Shaft/Rendering/RenderShiftedBox.swift:14:22-14:34
12 | /// Used by ``RenderConstraintsTransformBox`` and ``ConstraintsTransformBox``.
13 | /// Typically the caller requires the returned ``BoxConstraints`` to be
14 + /// ``BoxConstraints/isNormalized``.
15 | public class RenderShiftedBox: RenderBox, RenderObjectWithSingleChild {
16 | public typealias ChildType = RenderBox
warning: 'PipelineOwner' doesn't exist at '/Shaft/RenderView/prepareInitialFrame()'
--> Sources/Shaft/Rendering/RenderView.swift:102:11-102:24
100 | ///
101 | /// This does not actually schedule the first frame. Call
102 + /// ``PipelineOwner/requestVisualUpdate`` on ``owner`` to do that.
103 | public func prepareInitialFrame() {
104 | assert(owner != nil)
warning: 'owner' doesn't exist at '/Shaft/RenderView/prepareInitialFrame()'
--> Sources/Shaft/Rendering/RenderView.swift:102:52-102:57
100 | ///
101 | /// This does not actually schedule the first frame. Call
102 + /// ``PipelineOwner/requestVisualUpdate`` on ``owner`` to do that.
103 | public func prepareInitialFrame() {
104 | assert(owner != nil)
warning: 'position' doesn't exist at '/Shaft/RenderView/hitTest(_:position:)'
--> Sources/Shaft/Rendering/RenderView.swift:159:15-159:23
157 | /// given hit test result.
158 | ///
159 + /// The ``position`` argument is in the coordinate system of the render view,
160 | /// which is to say, in logical pixels. This is not necessarily the same
161 | /// coordinate system as that expected by the root ``Layer``, which will
warning: 'handleBeginFrame' doesn't exist at '/Shaft/SchedulerBinding'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:10:24-10:40
8 |
9 | /// The various phases that a ``SchedulerBinding`` goes through during
10 + /// ``SchedulerBinding/handleBeginFrame``.
11 | ///
12 | /// This is exposed by ``SchedulerBinding/schedulerPhase``.
warning: 'handleBeginFrame' doesn't exist at '/Shaft/SchedulerBinding/hasScheduledFrame'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:44:53-44:69
42 | public private(set) var schedulerPhase = SchedulerPhase.idle
43 |
44 + /// Whether this scheduler has requested that ``handleBeginFrame`` be called soon.
45 | public private(set) var hasScheduledFrame = false
46 |
warning: 'scheduleFrame' doesn't exist at '/Shaft/SchedulerBinding/framesEnabled'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:47:61-47:74
45 | public private(set) var hasScheduledFrame = false
46 |
47 + /// Whether frames are currently being scheduled when ``scheduleFrame`` is called.
48 | ///
49 | /// This value depends on the value of the ``lifecycleState``.
warning: 'lifecycleState' doesn't exist at '/Shaft/SchedulerBinding/framesEnabled'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:49:50-49:64
47 | /// Whether frames are currently being scheduled when ``scheduleFrame`` is called.
48 | ///
49 + /// This value depends on the value of the ``lifecycleState``.
50 | public private(set) var framesEnabled = true
51 |
warning: 'scheduleFrame' doesn't exist at '/Shaft/SchedulerBinding/ensureVisualUpdate()'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:64:39-64:52
62 | private var rescheduleAfterWarmUpFrame = false
63 |
64 + /// Schedules a new frame using ``scheduleFrame`` if this object is not
65 | /// currently producing a frame.
66 | ///
warning: 'handleDrawFrame' doesn't exist at '/Shaft/SchedulerBinding/ensureVisualUpdate()'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:67:44-67:59
65 | /// currently producing a frame.
66 | ///
67 + /// Calling this method ensures that ``handleDrawFrame`` will eventually be
68 | /// called, unless it's already in progress.
69 | public func ensureVisualUpdate() {
warning: 'handleBeginFrame' doesn't exist at '/Shaft/SchedulerBinding/currentFrameTimeStamp'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:126:57-126:73
124 | /// The time stamp for the frame currently being processed.
125 | ///
126 + /// This is only valid while between the start of ``handleBeginFrame`` and the
127 | /// end of the corresponding ``handleDrawFrame``, i.e. while a frame is being
128 | /// produced.
warning: 'handleDrawFrame' doesn't exist at '/Shaft/SchedulerBinding/currentFrameTimeStamp'
--> Sources/Shaft/Scheduler/SchedulerBinding.swift:127:36-127:51
125 | ///
126 | /// This is only valid while between the start of ``handleBeginFrame`` and the
127 + /// end of the corresponding ``handleDrawFrame``, i.e. while a frame is being
128 | /// produced.
129 | public private(set) var currentFrameTimeStamp: Duration!
warning: 'SingleTickerProviderStateMixin' doesn't exist at '/Shaft/TickerProvider'
--> Sources/Shaft/Scheduler/Ticker.swift:14:7-14:37
12 | /// obtain their ``Ticker``. If you are creating an ``AnimationController`` from a
13 | /// ``State``, then you can use the ``TickerProviderStateMixin`` and
14 + /// ``SingleTickerProviderStateMixin`` classes to obtain a suitable
15 | /// ``TickerProvider``. The widget test framework ``WidgetTester`` object can be
16 | /// used as a ticker provider in the context of tests. In other contexts, you
warning: 'WidgetTester' doesn't exist at '/Shaft/TickerProvider'
--> Sources/Shaft/Scheduler/Ticker.swift:15:53-15:65
13 | /// ``State``, then you can use the ``TickerProviderStateMixin`` and
14 | /// ``SingleTickerProviderStateMixin`` classes to obtain a suitable
15 + /// ``TickerProvider``. The widget test framework ``WidgetTester`` object can be
16 | /// used as a ticker provider in the context of tests. In other contexts, you
17 | /// will have to either pass a ``TickerProvider`` from a higher level (e.g.
warning: 'addHandler' doesn't exist at '/Shaft/HardwareKeyboard'
--> Sources/Shaft/Services/HardwareKeyboard.swift:127:20-127:30
125 | ///
126 | /// To stay notified whenever keys are pressed, held, or released, add a
127 + /// handler with ``addHandler``. To only be notified when a specific part of the
| ╰─suggestion: Replace 'addHandler' with 'addHandler(_:)'
128 | /// app is focused, use a ``Focus`` widget's `onFocusChanged` attribute instead
129 | /// of ``addHandler``. Handlers should be removed with ``removeHandler`` when
warning: 'addHandler' doesn't exist at '/Shaft/HardwareKeyboard'
--> Sources/Shaft/Services/HardwareKeyboard.swift:129:10-129:20
127 | /// handler with ``addHandler``. To only be notified when a specific part of the
128 | /// app is focused, use a ``Focus`` widget's `onFocusChanged` attribute instead
129 + /// of ``addHandler``. Handlers should be removed with ``removeHandler`` when
| ╰─suggestion: Replace 'addHandler' with 'addHandler(_:)'
130 | /// notification is no longer necessary, or when the handler is being disposed.
131 | ///
warning: 'removeHandler' doesn't exist at '/Shaft/HardwareKeyboard'
--> Sources/Shaft/Services/HardwareKeyboard.swift:129:58-129:71
127 | /// handler with ``addHandler``. To only be notified when a specific part of the
128 | /// app is focused, use a ``Focus`` widget's `onFocusChanged` attribute instead
129 + /// of ``addHandler``. Handlers should be removed with ``removeHandler`` when
| ╰─suggestion: Replace 'removeHandler' with 'removeHandler(_:)'
130 | /// notification is no longer necessary, or when the handler is being disposed.
131 | ///
warning: 'ServicesBinding' doesn't exist at '/Shaft/HardwareKeyboard'
--> Sources/Shaft/Services/HardwareKeyboard.swift:137:66-137:81
135 | /// event handler.
136 | ///
137 + /// The singleton ``HardwareKeyboard`` instance is held by the ``ServicesBinding``
138 | /// as ``ServicesBinding/keyboard``, and can be conveniently accessed using the
139 | /// ``HardwareKeyboard/instance`` static accessor.
warning: 'ServicesBinding' doesn't exist at '/Shaft/HardwareKeyboard'
--> Sources/Shaft/Services/HardwareKeyboard.swift:138:10-138:25
136 | ///
137 | /// The singleton ``HardwareKeyboard`` instance is held by the ``ServicesBinding``
138 + /// as ``ServicesBinding/keyboard``, and can be conveniently accessed using the
139 | /// ``HardwareKeyboard/instance`` static accessor.
140 | ///
warning: 'instance' doesn't exist at '/Shaft/HardwareKeyboard'
--> Sources/Shaft/Services/HardwareKeyboard.swift:139:24-139:32
137 | /// The singleton ``HardwareKeyboard`` instance is held by the ``ServicesBinding``
138 | /// as ``ServicesBinding/keyboard``, and can be conveniently accessed using the
139 + /// ``HardwareKeyboard/instance`` static accessor.
140 | ///
141 | /// ## Event model
warning: 'removeHandler' doesn't exist at '/Shaft/HardwareKeyboard/addHandler(_:)'
--> Sources/Shaft/Services/HardwareKeyboard.swift:384:14-384:27
382 | /// See also:
383 | ///
384 + /// * ``removeHandler``, which removes the handler.
385 | public func addHandler(_ handler: Handler) {
386 | if _duringDispatch {
warning: 'addHandler' doesn't exist at '/Shaft/HardwareKeyboard/removeHandler(_:)'
--> Sources/Shaft/Services/HardwareKeyboard.swift:398:11-398:21
396 | ///
397 | /// The `handler` argument must be [identical] to the one used in
398 + /// ``addHandler``. If multiple exist, the first one will be removed.
399 | /// If none is found, then this method is a no-op.
400 | ///
warning: 'SystemMouseCursors' doesn't exist at '/Shaft/MouseCursorManager/init(fallbackMouseCursor:)'
--> Sources/Shaft/Services/MouseCursor.swift:17:11-17:29
15 | ///
16 | /// The `fallbackMouseCursor` must not be ``MouseCursor/defer`` (typically
17 + /// ``SystemMouseCursors/basic``).
18 | public init(fallbackMouseCursor: MouseCursor) {
19 | precondition(fallbackMouseCursor != MouseCursor.defer)
warning: 'SystemMouseCursors' doesn't exist at '/Shaft/MouseCursor'
--> Sources/Shaft/Services/MouseCursor.swift:95:22-95:40
93 | /// moves), ``MouseTracker`` finds the _active cursor_ of each mouse device, which
94 | /// is the front-most region associated with the position of each mouse cursor,
95 + /// or defaults to ``SystemMouseCursors/basic`` if no cursors are associated with
96 | /// the position. ``MouseTracker`` changes the cursor of the pointer if the new
97 | /// active cursor is different from the previous active cursor, whose effect is
warning: 'addActionListener' doesn't exist at '/Shaft/Action'
--> Sources/Shaft/Widgets/Actions.swift:27:51-27:68
25 | /// action's state.
26 | ///
27 + /// To register an action listener, call ``Action/addActionListener``.
| ├─suggestion: Replace 'addActionListener' with 'addActionListener(_:callback:)'
| ├─suggestion: Replace 'addActionListener' with 'notifyActionListeners()'
| ╰─suggestion: Replace 'addActionListener' with 'removeActionListener(_:)'
28 | public typealias ActionListenerCallback = (any ActionProtocol) -> Void
29 |
warning: 'ContextAction' doesn't exist at '/Shaft/ActionProtocol/isEnabled(_:context:)'
--> Sources/Shaft/Widgets/Actions.swift:40:11-40:24
38 | ///
39 | /// If the action's enable state depends on a ``BuildContext``, subclass
40 + /// ``ContextAction`` instead of ``Action``.
41 | func isEnabled(_ intent: IntentType, context: BuildContext?) -> Bool
42 |
warning: 'ContextAction' doesn't exist at '/Shaft/Action/isEnabled(_:context:)'
--> Sources/Shaft/Widgets/Actions.swift:40:11-40:24
38 | ///
39 | /// If the action's enable state depends on a ``BuildContext``, subclass
40 + /// ``ContextAction`` instead of ``Action``.
41 | func isEnabled(_ intent: IntentType, context: BuildContext?) -> Bool
42 |
warning: 'invoke' doesn't exist at '/Shaft/Actions'
--> Sources/Shaft/Widgets/Actions.swift:46:19-46:25
44 | ///
45 | /// This is called by the ``ActionDispatcher`` when an action is invoked via
46 + /// ``Actions/invoke``, or when an action is invoked using
| ╰─suggestion: Replace 'invoke' with 'invoke(_:_:)'
47 | /// ``ActionDispatcher/invokeAction`` directly.
48 | ///
warning: 'invoke' doesn't exist at '/Shaft/Actions'
--> Sources/Shaft/Widgets/Actions.swift:46:19-46:25
44 | ///
45 | /// This is called by the ``ActionDispatcher`` when an action is invoked via
46 + /// ``Actions/invoke``, or when an action is invoked using
| ╰─suggestion: Replace 'invoke' with 'invoke(_:_:)'
47 | /// ``ActionDispatcher/invokeAction`` directly.
48 | ///
warning: 'invokeAction' doesn't exist at '/Shaft/ActionDispatcher'
--> Sources/Shaft/Widgets/Actions.swift:47:28-47:40
45 | /// This is called by the ``ActionDispatcher`` when an action is invoked via
46 | /// ``Actions/invoke``, or when an action is invoked using
47 + /// ``ActionDispatcher/invokeAction`` directly.
| ├─suggestion: Replace 'invokeAction' with 'invokeAction(_:_:_:)'
| ╰─suggestion: Replace 'invokeAction' with 'invokeActionIfEnabled(_:_:_:)'
48 | ///
49 | /// This method is only meant to be invoked by an ``ActionDispatcher``, or by
warning: 'invokeAction' doesn't exist at '/Shaft/ActionDispatcher'
--> Sources/Shaft/Widgets/Actions.swift:47:28-47:40
45 | /// This is called by the ``ActionDispatcher`` when an action is invoked via
46 | /// ``Actions/invoke``, or when an action is invoked using
47 + /// ``ActionDispatcher/invokeAction`` directly.
| ├─suggestion: Replace 'invokeAction' with 'invokeAction(_:_:_:)'
| ╰─suggestion: Replace 'invokeAction' with 'invokeActionIfEnabled(_:_:_:)'
48 | ///
49 | /// This method is only meant to be invoked by an ``ActionDispatcher``, or by
warning: 'invoke' doesn't exist at '/Shaft/Actions'
--> Sources/Shaft/Widgets/Actions.swift:75:19-75:25
73 | ///
74 | /// To receive the result of invoking an action, it must be invoked using
75 + /// ``Actions/invoke``, or by invoking it using an ``ActionDispatcher``. An action
| ╰─suggestion: Replace 'invoke' with 'invoke(_:_:)'
76 | /// invoked via a [Shortcuts] widget will have its return value ignored.
77 | ///
warning: 'invoke' doesn't exist at '/Shaft/Actions'
--> Sources/Shaft/Widgets/Actions.swift:75:19-75:25
73 | ///
74 | /// To receive the result of invoking an action, it must be invoked using
75 + /// ``Actions/invoke``, or by invoking it using an ``ActionDispatcher``. An action
| ╰─suggestion: Replace 'invoke' with 'invoke(_:_:)'
76 | /// invoked via a [Shortcuts] widget will have its return value ignored.
77 | ///
warning: 'ContextAction' doesn't exist at '/Shaft/ActionProtocol/invoke(_:context:)'
--> Sources/Shaft/Widgets/Actions.swift:79:11-79:24
77 | ///
78 | /// If the action's behavior depends on a ``BuildContext``, subclass
79 + /// ``ContextAction`` instead of ``Action``.
80 | func invoke(_ intent: IntentType, context: BuildContext?) -> Any?
81 |
warning: 'ContextAction' doesn't exist at '/Shaft/Action/invoke(_:context:)'
--> Sources/Shaft/Widgets/Actions.swift:79:11-79:24
77 | ///
78 | /// If the action's behavior depends on a ``BuildContext``, subclass
79 + /// ``ContextAction`` instead of ``Action``.
80 | func invoke(_ intent: IntentType, context: BuildContext?) -> Any?
81 |
warning: 'ContextAction' doesn't exist at '/Shaft/ActionDispatcher'
--> Sources/Shaft/Widgets/Actions.swift:423:11-423:24
421 | /// method on the ``Action`` object.
422 | ///
423 + /// For ``ContextAction`` actions, if no `context` is provided, the
424 | /// ``BuildContext`` of the [primaryFocus] is used instead.
425 | ///
warning: 'ContextAction' doesn't exist at '/Shaft/ActionDispatcher/invokeAction(_:_:_:)'
--> Sources/Shaft/Widgets/Actions.swift:439:27-439:40
437 | ///
438 | /// The action will be invoked with the given `context`, if given, but only if
439 + /// the action is a ``ContextAction`` subclass. If no `context` is given, and
440 | /// the action is a ``ContextAction``, then the context from the [primaryFocus]
441 | /// is used.
warning: 'ContextAction' doesn't exist at '/Shaft/ActionDispatcher/invokeAction(_:_:_:)'
--> Sources/Shaft/Widgets/Actions.swift:440:27-440:40
438 | /// The action will be invoked with the given `context`, if given, but only if
439 | /// the action is a ``ContextAction`` subclass. If no `context` is given, and
440 + /// the action is a ``ContextAction``, then the context from the [primaryFocus]
441 | /// is used.
442 | ///
warning: 'ContextAction' doesn't exist at '/Shaft/ActionDispatcher/invokeAction(_:_:_:)'
--> Sources/Shaft/Widgets/Actions.swift:447:43-447:56
445 | /// The caller must receive a `true` result from [Action.isEnabled] before
446 | /// calling this function (or [ContextAction.isEnabled] with the same
447 + /// `context`, if the `action` is a ``ContextAction``). This function will
448 | /// assert if the action is not enabled when called.
449 | ///
warning: 'ContextAction' doesn't exist at '/Shaft/ActionDispatcher/invokeActionIfEnabled(_:_:_:)'
--> Sources/Shaft/Widgets/Actions.swift:469:27-469:40
467 | ///
468 | /// The action will be invoked with the given `context`, if given, but only if
469 + /// the action is a ``ContextAction`` subclass. If no `context` is given, and
470 | /// the action is a ``ContextAction``, then the context from the [primaryFocus]
471 | /// is used.
warning: 'ContextAction' doesn't exist at '/Shaft/ActionDispatcher/invokeActionIfEnabled(_:_:_:)'
--> Sources/Shaft/Widgets/Actions.swift:470:27-470:40
468 | /// The action will be invoked with the given `context`, if given, but only if
469 | /// the action is a ``ContextAction`` subclass. If no `context` is given, and
470 + /// the action is a ``ContextAction``, then the context from the [primaryFocus]
471 | /// is used.
472 | ///
warning: 'invoke' doesn't exist at '/Shaft/Actions'
--> Sources/Shaft/Widgets/Actions.swift:497:21-497:27
495 | ///
496 | /// Actions are typically invoked using [Shortcuts]. They can also be invoked
497 + /// using ``Actions/invoke`` on a context containing an ambient [Actions] widget.
| ╰─suggestion: Replace 'invoke' with 'invoke(_:_:)'
498 | ///
499 | /// See also:
warning: 'RotatedBox' doesn't exist at '/Shaft/Transform'
--> Sources/Shaft/Widgets/Basic.swift:13:14-13:24
11 | /// A widget that applies a transformation before painting its child.
12 | ///
13 + /// Unlike ``RotatedBox``, which applies a rotation prior to layout, this object
14 | /// applies its transformation just prior to painting, which means the
15 | /// transformation is not taken into account when calculating how much space
warning: 'RotatedBox' doesn't exist at '/Shaft/Transform'
--> Sources/Shaft/Widgets/Basic.swift:22:10-22:20
20 | /// See also:
21 | ///
22 + /// * ``RotatedBox``, which rotates the child widget during layout, not just
23 | /// during painting.
24 | /// * ``FractionalTranslation``, which applies a translation to the child
warning: 'FractionalTranslation' doesn't exist at '/Shaft/Transform'
--> Sources/Shaft/Widgets/Basic.swift:24:10-24:31
22 | /// * ``RotatedBox``, which rotates the child widget during layout, not just
23 | /// during painting.
24 + /// * ``FractionalTranslation``, which applies a translation to the child
25 | /// that is relative to the child's size.
26 | /// * ``FittedBox``, which sizes and positions its child widget to fit the parent
warning: 'FittedBox' doesn't exist at '/Shaft/Transform'
--> Sources/Shaft/Widgets/Basic.swift:26:10-26:19
24 | /// * ``FractionalTranslation``, which applies a translation to the child
25 | /// that is relative to the child's size.
26 + /// * ``FittedBox``, which sizes and positions its child widget to fit the parent
27 | /// according to a given ``BoxFit`` discipline.
28 | /// * The [catalog of layout widgets](https://flutter.dev/widgets/layout/).
warning: 'RotationTransition' doesn't exist at '/Shaft/Transform/init(angle:origin:alignment:transformHitTests:filterQuality:child:)'
--> Sources/Shaft/Widgets/Basic.swift:54:14-54:32
52 | /// See also:
53 | ///
54 + /// * ``RotationTransition``, which animates changes in rotation smoothly
55 | /// over a given duration.
56 | public init(
warning: 'ScaleTransition' doesn't exist at '/Shaft/Transform/init(scale:scaleX:scaleY:origin:alignment:transformHitTests:filterQuality:child:)'
--> Sources/Shaft/Widgets/Basic.swift:108:13-108:28
106 | /// See also:
107 | ///
108 + /// * ``ScaleTransition``, which animates changes in scale smoothly over a given
109 | /// duration.
110 | public init(
warning: 'FittedBox' doesn't exist at '/Shaft/ClipRRect'
--> Sources/Shaft/Widgets/Basic.swift:2332:65-2332:74
2330 | /// When a [ClipRRect] is bigger than the child it contains, its rounded corners
2331 | /// could be drawn in unexpected positions. Make sure that [ClipRRect] and its child
2332 + /// have the same bounds (by shrinking the [ClipRRect] with a ``FittedBox`` or by
2333 | /// growing the child).
2334 | ///
warning: 'runApp' doesn't exist at '/Shaft/WidgetsBinding/rootElement'
--> Sources/Shaft/Widgets/Binding/WidgetsBinding.swift:129:46-129:52
127 | /// The ``Element`` that is at the root of the element tree hierarchy.
128 | ///
129 + /// This is initialized the first time ``runApp`` is called.
130 | public private(set) var rootElement: Element?
131 |
warning: 'runApp' doesn't exist at '/Shaft/runApp(_:view:)'
--> Sources/Shaft/Widgets/Binding/WidgetsBinding.swift:579:15-579:21
577 | /// your widget, you can also use the [Center] widget.
578 | ///
579 + /// Calling ``runApp`` again will detach the previous root widget from the screen
580 | /// and attach the given widget in its place. The new widget tree is compared
581 | /// against the previous widget tree and any differences are applied to the
warning: 'update' doesn't exist at '/Shaft/ProxyElement/notifyClients(_:)'
--> Sources/Shaft/Widgets/Framework/Framework.swift:2730:25-2730:31
2728 | /// changed.
2729 | ///
2730 + /// Called during ``update`` (via ``updated``) after changing the widget
2731 | /// associated with this element but before rebuilding this element.
2732 | open func notifyClients(_ oldWidget: ProxyWidget) {}
warning: 'update' doesn't exist at '/Shaft/ParentDataElement/notifyClients(_:)'
--> Sources/Shaft/Widgets/Framework/Framework.swift:2730:25-2730:31
2728 | /// changed.
2729 | ///
2730 + /// Called during ``update`` (via ``updated``) after changing the widget
2731 | /// associated with this element but before rebuilding this element.
2732 | open func notifyClients(_ oldWidget: ProxyWidget) {}
warning: 'updated' doesn't exist at '/Shaft/ProxyElement/notifyClients(_:)'
--> Sources/Shaft/Widgets/Framework/Framework.swift:2730:41-2730:48
2728 | /// changed.
2729 | ///
2730 + /// Called during ``update`` (via ``updated``) after changing the widget
2731 | /// associated with this element but before rebuilding this element.
2732 | open func notifyClients(_ oldWidget: ProxyWidget) {}
warning: 'updated' doesn't exist at '/Shaft/ParentDataElement/notifyClients(_:)'
--> Sources/Shaft/Widgets/Framework/Framework.swift:2730:41-2730:48
2728 | /// changed.
2729 | ///
2730 + /// Called during ``update`` (via ``updated``) after changing the widget
2731 | /// associated with this element but before rebuilding this element.
2732 | open func notifyClients(_ oldWidget: ProxyWidget) {}
warning: 'updateShouldNotify' doesn't exist at '/Shaft/InheritedWidget'
--> Sources/Shaft/Widgets/InheritedModel.swift:6:52-6:70
4 | ///
5 | /// An inherited widget's dependents are unconditionally rebuilt when the
6 + /// inherited widget changes per ``InheritedWidget/updateShouldNotify``. This
| ╰─suggestion: Replace 'updateShouldNotify' with 'updateShouldNotify(_:)'
7 | /// widget is similar except that dependents aren't rebuilt unconditionally.
8 | ///
warning: 'inheritFrom' doesn't exist at '/Shaft/InheritedModel'
--> Sources/Shaft/Widgets/InheritedModel.swift:19:22-19:33
17 | ///
18 | /// Widgets create a dependency on an ``InheritedModel`` with a static method:
19 + /// ``InheritedModel/inheritFrom``. This method's `context` parameter defines the
| ╰─suggestion: Replace 'inheritFrom' with 'inheritFrom(_:context:aspect:)'
20 | /// subtree that will be rebuilt when the model changes. Typically the
21 | /// `inheritFrom` method is called from a model-specific static `maybeOf` or
warning: 'updateShouldNotifyDependent' doesn't exist at '/Shaft/InheritedModel'
--> Sources/Shaft/Widgets/InheritedModel.swift:52:7-52:34
50 | ///
51 | /// In the previous example the dependencies checked by
52 + /// ``updateShouldNotifyDependent`` are just the aspect strings passed to
| ╰─suggestion: Replace 'updateShouldNotifyDependent' with 'updateShouldNotifyDependent(_:_:)'
53 | /// `dependOnInheritedWidgetOfExactType`. They're represented as a ``Set`` because
54 | /// one Widget can depend on more than one aspect of the model. If a widget
warning: 'Set' doesn't exist at '/Shaft/InheritedModel'
--> Sources/Shaft/Widgets/InheritedModel.swift:53:70-53:73
51 | /// In the previous example the dependencies checked by
52 | /// ``updateShouldNotifyDependent`` are just the aspect strings passed to
53 + /// `dependOnInheritedWidgetOfExactType`. They're represented as a ``Set`` because
54 | /// one Widget can depend on more than one aspect of the model. If a widget
55 | /// depends on the model but doesn't specify an aspect, then changes in the
warning: 'updateShouldNotifyDependent' doesn't exist at '/Shaft/MediaQuery/inheritFrom(_:context:aspect:)'
--> Sources/Shaft/Widgets/InheritedModel.swift:129:24-129:51
127 | ///
128 | /// When the given [aspect] of the model changes, the [context] will be
129 + /// rebuilt. The ``updateShouldNotifyDependent`` method must determine if a
130 | /// change in the model widget corresponds to an [aspect] value.
131 | ///
warning: 'updateShouldNotifyDependent' doesn't exist at '/Shaft/InheritedModel/inheritFrom(_:context:aspect:)'
--> Sources/Shaft/Widgets/InheritedModel.swift:129:24-129:51
127 | ///
128 | /// When the given [aspect] of the model changes, the [context] will be
129 + /// rebuilt. The ``updateShouldNotifyDependent`` method must determine if a
130 | /// change in the model widget corresponds to an [aspect] value.
131 | ///
warning: 'of' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/MediaQuery.swift:21:26-21:28
19 | ///
20 | /// To obtain the entire current ``MediaQueryData`` for a given ``BuildContext``,
21 + /// use the ``MediaQuery/of`` function. This can be useful if you are going to use
22 | /// ``copyWith`` to replace the ``MediaQueryData`` with one with an updated
23 | /// property.
warning: 'copyWith' doesn't exist at '/Shaft/MediaQueryData'
--> Sources/Shaft/Widgets/MediaQuery.swift:22:7-22:15
20 | /// To obtain the entire current ``MediaQueryData`` for a given ``BuildContext``,
21 | /// use the ``MediaQuery/of`` function. This can be useful if you are going to use
22 + /// ``copyWith`` to replace the ``MediaQueryData`` with one with an updated
23 | /// property.
24 | ///
warning: 'of' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/MediaQuery.swift:152:34-152:36
150 | /// updated.
151 | ///
152 + /// In general, ``MediaQuery/of``, and its associated "...Of" methods, are the
153 | /// appropriate way to obtain ``MediaQueryData`` from a widget. This `fromView`
154 | /// constructor is primarily for use in the implementation of the framework
warning: 'of```.size` to get the size, since the former will only notify of changes in [size], while the latter will notify for all ' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/MediaQuery.swift:216:60-216:182
214 | /// [devicePixelRatio].
215 | ///
216 + /// Prefer using [MediaQuery.sizeOf] over ``MediaQuery/of```.size` to get the
217 | /// size, since the former will only notify of changes in [size], while the
218 | /// latter will notify for all ``MediaQueryData`` changes.
warning: 'of' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/MediaQuery.swift:700:33-700:35
698 | ///
699 | /// {@template flutter.widgets.media_query.MediaQuery.useSpecific}
700 + /// Querying using ``MediaQuery/of`` will cause your widget to rebuild
701 | /// automatically whenever _any_ field of the ``MediaQueryData`` changes (e.g., if
702 | /// the user rotates their device). Therefore, unless you are concerned with the
warning: 'of' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/MediaQuery.swift:707:56-707:58
705 | /// rebuild more efficiently.
706 | ///
707 + /// If no ``MediaQuery`` is in scope then ``MediaQuery/of`` and the "...Of" methods
708 | /// similar to [MediaQuery.sizeOf] will throw an exception. Alternatively, the
709 | /// "maybe-" variant methods (such as [MediaQuery.maybeOf] and
warning: 'of' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/MediaQuery.swift:1007:45-1007:47
1005 | ///
1006 | /// Use this function if you want to allow situations where no ``MediaQuery`` is
1007 + /// in scope. Prefer using ``MediaQuery/of`` in situations where a media query
1008 | /// is always expected to exist.
1009 | ///
warning: 'List' doesn't exist at '/Shaft/SliverChildDelegate'
--> Sources/Shaft/Widgets/Scroll/ScrollDelegate.swift:23:37-23:41
21 | /// Many slivers lazily construct their box children to avoid creating more
22 | /// children than are visible through the ``Viewport``. Rather than receiving
23 + /// their children as an explicit ``List``, they receive their children using a
24 | /// ``SliverChildDelegate``.
25 | ///
warning: 'applyTo' doesn't exist at '/Shaft/ScrollPhysics'
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:59:55-59:62
57 | /// ```
58 | ///
59 + /// When implementing a subclass, you must override ``applyTo`` so that it returns
| ╰─suggestion: Replace 'applyTo' with 'applyTo(_:)'
60 | /// an appropriate instance of your subclass. Otherwise, classes like
61 | /// ``Scrollable`` that inform a ``ScrollPosition`` will combine them with
warning: This documentation block is inherited by other symbols where 'parent' fails to resolve.
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:114:12-114:22
112 | /// when it does not.
113 | ///
114 + /// If ``parent`` is null then this returns a ``ScrollPhysics`` with the
| ╰─suggestion: Use an absolute link path.
115 | /// same [runtimeType], but where the ``parent`` has been replaced
116 | /// with the [ancestor].
warning: This documentation block is inherited by other symbols where 'parent' fails to resolve.
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:115:43-115:53
113 | ///
114 | /// If ``parent`` is null then this returns a ``ScrollPhysics`` with the
115 + /// same [runtimeType], but where the ``parent`` has been replaced
| ╰─suggestion: Use an absolute link path.
116 | /// with the [ancestor].
117 | ///
warning: 'applyTo' doesn't exist at '/Shaft/ScrollPhysics/applyTo(_:)'
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:125:27-125:34
123 | /// object. This is inefficient.
124 | ///
125 + /// ## Implementing ``applyTo``
126 | ///
127 | /// When creating a custom ``ScrollPhysics`` subclass, this method
warning: 'applyTo' doesn't exist at '/Shaft/AlwaysScrollableScrollPhysics/applyTo(_:)'
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:125:27-125:34
123 | /// object. This is inefficient.
124 | ///
125 + /// ## Implementing ``applyTo``
126 | ///
127 | /// When creating a custom ``ScrollPhysics`` subclass, this method
warning: This documentation block is inherited by other symbols where 'parent' fails to resolve.
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:130:40-130:50
128 | /// must be implemented. If the physics class has no constructor
129 | /// arguments, then implementing this method is merely a matter of
130 + /// calling the constructor with a ``parent`` constructed using
| ╰─suggestion: Use an absolute link path.
131 | /// [buildParent], as follows:
132 | ///
warning: 'applyTo' doesn't exist at '/Shaft/ScrollPhysics/applyTo(_:)'
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:152:74-152:81
150 | /// See also:
151 | ///
152 + /// * [buildParent], a utility method that's often used to define ``applyTo``
153 | /// methods for ``ScrollPhysics`` subclasses.
154 | public func applyTo(_ ancestor: ScrollPhysics?) -> ScrollPhysics {
warning: 'applyTo' doesn't exist at '/Shaft/AlwaysScrollableScrollPhysics/applyTo(_:)'
--> Sources/Shaft/Widgets/Scroll/ScrollPhysics.swift:152:74-152:81
150 | /// See also:
151 | ///
152 + /// * [buildParent], a utility method that's often used to define ``applyTo``
153 | /// methods for ``ScrollPhysics`` subclasses.
154 | public func applyTo(_ ancestor: ScrollPhysics?) -> ScrollPhysics {
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewKeyboardDismissBehavior'
--> Sources/Shaft/Widgets/ScrollView.swift:1:33-1:43
1 + /// A representation of how a ``ScrollView`` should dismiss the on-screen
2 | /// keyboard.
3 | public enum ScrollViewKeyboardDismissBehavior {
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewKeyboardDismissBehavior/onDrag'
--> Sources/Shaft/Widgets/ScrollView.swift:7:35-7:45
5 | /// It is up to the client to dismiss the keyboard.
6 | case manual
7 + /// `onDrag` means that the ``ScrollView`` will dismiss an on-screen keyboard
8 | /// when a drag begins.
9 | case onDrag
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase'
--> Sources/Shaft/Widgets/ScrollView.swift:25:7-25:17
23 | /// various scrolling effects, such as lists, grids, and expanding headers.
24 | ///
25 + /// ``ScrollView`` helps orchestrate these pieces by creating the ``Scrollable`` and
26 | /// the viewport and deferring to its subclass to create the slivers.
27 | ///
warning: 'PageStorage' doesn't exist at '/Shaft/ScrollViewBase'
--> Sources/Shaft/Widgets/ScrollView.swift:36:67-36:78
34 | /// ## Persisting the scroll position during a session
35 | ///
36 + /// Scroll views attempt to persist their scroll position using ``PageStorage``.
37 | /// This can be disabled by setting [ScrollController.keepScrollOffset] to false
38 | /// on the ``controller``. If it is enabled, using a [PageStorageKey] for the
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase'
--> Sources/Shaft/Widgets/ScrollView.swift:45:47-45:57
43 | /// See also:
44 | ///
45 + /// * [ListView], which is a commonly used ``ScrollView`` that displays a
46 | /// scrolling, linear list of child widgets.
47 | /// * [PageView], which is a scrolling list of child widgets that are each the
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase'
--> Sources/Shaft/Widgets/ScrollView.swift:49:33-49:43
47 | /// * [PageView], which is a scrolling list of child widgets that are each the
48 | /// size of the viewport.
49 + /// * [GridView], which is a ``ScrollView`` that displays a scrolling, 2D array
50 | /// of child widgets.
51 | /// * [CustomScrollView], which is a ``ScrollView`` that creates custom scroll
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase'
--> Sources/Shaft/Widgets/ScrollView.swift:51:41-51:51
49 | /// * [GridView], which is a ``ScrollView`` that displays a scrolling, 2D array
50 | /// of child widgets.
51 + /// * [CustomScrollView], which is a ``ScrollView`` that creates custom scroll
52 | /// effects using slivers.
53 | /// * [ScrollNotification] and [NotificationListener], which can be used to watch
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase'
--> Sources/Shaft/Widgets/ScrollView.swift:55:64-55:74
53 | /// * [ScrollNotification] and [NotificationListener], which can be used to watch
54 | /// the scroll position without using a [ScrollController].
55 + /// * [TwoDimensionalScrollView], which is a similar widget ``ScrollView`` that
56 | /// scrolls in two dimensions.
57 | public class ScrollViewBase: StatelessWidget {
warning: 'PageStorage' doesn't exist at '/Shaft/ScrollViewBase/controller'
--> Sources/Shaft/Widgets/ScrollView.swift:153:55-153:66
151 | /// the initial scroll position (see ``ScrollController/initialScrollOffset``).
152 | /// It can be used to control whether the scroll view should automatically
153 + /// save and restore its scroll position in the ``PageStorage`` (see
154 | /// [ScrollController.keepScrollOffset]). It can be used to read the current
155 | /// scroll position (see [ScrollController.offset]), or change it (see
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase/center'
--> Sources/Shaft/Widgets/ScrollView.swift:270:41-270:51
268 | /// The [center] must be the key of one of the slivers built by [buildSlivers].
269 | ///
270 + /// Of the built-in subclasses of ``ScrollView``, only [CustomScrollView]
271 | /// supports [center]; for that class, the given key must be the key of one of
272 | /// the slivers in the ``CustomScrollView/slivers`` list.
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase/semanticChildCount'
--> Sources/Shaft/Widgets/ScrollView.swift:303:28-303:38
301 | /// The number of children that will contribute semantic information.
302 | ///
303 + /// Some subtypes of ``ScrollView`` can infer this value automatically. For
304 | /// example [ListView] will use the number of widgets in the child list,
305 | /// while the [ListView.separated] constructor will use half that amount.
warning: 'ScrollView' doesn't exist at '/Shaft/ScrollViewBase/keyboardDismissBehavior'
--> Sources/Shaft/Widgets/ScrollView.swift:318:68-318:78
316 | public let dragStartBehavior: DragStartBehavior
317 |
318 + /// [ScrollViewKeyboardDismissBehavior] the defines how this ``ScrollView`` will
319 | /// dismiss the keyboard automatically.
320 | public let keyboardDismissBehavior: ScrollViewKeyboardDismissBehavior
warning: 'ScrollView' doesn't exist at '/Shaft/CustomScrollView'
--> Sources/Shaft/Widgets/ScrollView.swift:469:9-469:19
467 | }
468 |
469 + /// A ``ScrollView`` that creates custom scroll effects using [slivers].
470 | ///
471 | /// A [CustomScrollView] lets you supply [slivers] directly to create various
warning: 'controller' doesn't exist at '/Shaft/CustomScrollView'
--> Sources/Shaft/Widgets/ScrollView.swift:480:7-480:17
478 | ///
479 | /// To control the initial scroll offset of the scroll view, provide a
480 + /// ``controller`` with its ``ScrollController/initialScrollOffset`` property set.
481 | ///
482 | /// {@animation 400 376 https://flutter.github.io/assets-for-api-docs/assets/widgets/custom_scroll_view.mp4}
warning: 'ScrollView' doesn't exist at '/Shaft/CustomScrollView/init(key:scrollDirection:reverse:controller:primary:physics:scrollBehavior:shrinkWrap:center:anchor:cacheExtent:semanticChildCount:dragStartBehavior:keyboardDismissBehavior:restorationId:clipBehavior:hitTestBehavior:slivers:)'
--> Sources/Shaft/Widgets/ScrollView.swift:533:21-533:31
531 | /// for scroll announcements.
532 | public class CustomScrollView: ScrollViewBase {
533 + /// Creates a ``ScrollView`` that creates custom scroll effects using slivers.
534 | ///
535 | /// See the ``ScrollView`` constructor for more details on these arguments.
warning: 'ScrollView' doesn't exist at '/Shaft/CustomScrollView/init(key:scrollDirection:reverse:controller:primary:physics:scrollBehavior:shrinkWrap:center:anchor:cacheExtent:semanticChildCount:dragStartBehavior:keyboardDismissBehavior:restorationId:clipBehavior:hitTestBehavior:slivers:)'
--> Sources/Shaft/Widgets/ScrollView.swift:535:19-535:29
533 | /// Creates a ``ScrollView`` that creates custom scroll effects using slivers.
534 | ///
535 + /// See the ``ScrollView`` constructor for more details on these arguments.
536 | public init(
537 | key: (any Key)? = nil,
warning: 'ScrollView' doesn't exist at '/Shaft/BoxScrollView'
--> Sources/Shaft/Widgets/ScrollView.swift:681:9-681:19
679 | }
680 |
681 + /// A ``ScrollView`` that uses a single child layout model.
682 | ///
683 | /// {@template flutter.widgets.BoxScroll.scrollBehaviour}
warning: 'ScrollView' doesn't exist at '/Shaft/BoxScrollView'
--> Sources/Shaft/Widgets/ScrollView.swift:684:7-684:17
682 | ///
683 | /// {@template flutter.widgets.BoxScroll.scrollBehaviour}
684 + /// ``ScrollView``s are often decorated with [Scrollbar]s and overscroll indicators,
685 | /// which are managed by the inherited [ScrollBehavior]. Placing a
686 | /// [ScrollConfiguration] above a ScrollView can modify these behaviors for that
warning: 'ScrollView' doesn't exist at '/Shaft/BoxScrollView/init(key:scrollDirection:reverse:controller:primary:physics:shrinkWrap:padding:cacheExtent:semanticChildCount:dragStartBehavior:keyboardDismissBehavior:restorationId:clipBehavior:hitTestBehavior:)'
--> Sources/Shaft/Widgets/ScrollView.swift:698:21-698:31
696 | /// single scroll view.
697 | public class BoxScrollView: ScrollViewBase {
698 + /// Creates a ``ScrollView`` uses a single child layout model.
699 | ///
700 | /// If the [primary] argument is true, the ``controller`` must be null.
warning: 'controller' doesn't exist at '/Shaft/BoxScrollView/init(key:scrollDirection:reverse:controller:primary:physics:shrinkWrap:padding:cacheExtent:semanticChildCount:dragStartBehavior:keyboardDismissBehavior:restorationId:clipBehavior:hitTestBehavior:)'
--> Sources/Shaft/Widgets/ScrollView.swift:700:50-700:60
698 | /// Creates a ``ScrollView`` uses a single child layout model.
699 | ///
700 + /// If the [primary] argument is true, the ``controller`` must be null.
701 | public init(
702 | key: (any Key)? = nil,
warning: 'controller' doesn't exist at '/Shaft/ListView'
--> Sources/Shaft/Widgets/ScrollView.swift:831:7-831:17
829 | ///
830 | /// To control the initial scroll offset of the scroll view, provide a
831 + /// ``controller`` with its ``ScrollController/initialScrollOffset`` property set.
832 | ///
833 | /// By default, [ListView] will automatically pad the list's scrollable
warning: 'controller' doesn't exist at '/Shaft/ListView'
--> Sources/Shaft/Widgets/ScrollView.swift:1006:48-1006:58
1004 | /// [ListView] to using [CustomScrollView] directly.
1005 | ///
1006 + /// The [key], [scrollDirection], [reverse], ``controller``, [primary], [physics],
1007 | /// and [shrinkWrap] properties on [ListView] map directly to the identically
1008 | /// named properties on [CustomScrollView].
warning: 'ScrollView' doesn't exist at '/Shaft/ListView/init(key:scrollDirection:reverse:controller:primary:physics:shrinkWrap:padding:itemExtent:itemExtentBuilder:prototypeItem:itemBuilder:findChildIndexCallback:itemCount:addAutomaticKeepAlives:addRepaintBoundaries:addSemanticIndexes:cacheExtent:semanticChildCount:dragStartBehavior:keyboardDismissBehavior:restorationId:clipBehavior:hitTestBehavior:)'
--> Sources/Shaft/Widgets/ScrollView.swift:1238:54-1238:64
1236 | /// will stop calling `itemBuilder`, even if it has yet to reach `itemCount`.
1237 | /// By returning `null`, the [ScrollPosition.maxScrollExtent] will not be accurate
1238 + /// unless the user has reached the end of the ``ScrollView``. This can also cause the
1239 | /// [Scrollbar] to grow as the user scrolls.
1240 | ///
warning: 'controller' doesn't exist at '/Shaft/GridView'
--> Sources/Shaft/Widgets/ScrollView.swift:1611:7-1611:17
1609 | ///
1610 | /// To control the initial scroll offset of the scroll view, provide a
1611 + /// ``controller`` with its ``ScrollController/initialScrollOffset`` property set.
1612 | ///
1613 | /// ## Transitioning to [CustomScrollView]
warning: 'controller' doesn't exist at '/Shaft/GridView'
--> Sources/Shaft/Widgets/ScrollView.swift:1623:48-1623:58
1621 | /// [GridView] to using [CustomScrollView] directly.
1622 | ///
1623 + /// The [key], [scrollDirection], [reverse], ``controller``, [primary], [physics],
1624 | /// and [shrinkWrap] properties on [GridView] map directly to the identically
1625 | /// named properties on [CustomScrollView].
warning: 'TextInputConfiguration.enableSuggestions' doesn't exist at '/Shaft/EditableText/enableSuggestions'
--> Sources/Shaft/Widgets/Text/EditableText.swift:423:16-423:56
421 | // public let smartQuotesType: SmartQuotesType
422 |
423 + /// See: ``TextInputConfiguration.enableSuggestions``
424 | public let enableSuggestions: Bool
425 |
warning: 'SelectionOverlay.onSelectionHandleTapped' doesn't exist at '/Shaft/EditableText/onSelectionHandleTapped'
--> Sources/Shaft/Widgets/Text/EditableText.swift:800:16-800:56
798 | public let onSelectionChanged: SelectionChangedCallback?
799 |
800 + /// See: ``SelectionOverlay.onSelectionHandleTapped``
801 | public let onSelectionHandleTapped: VoidCallback?
802 |
warning: 'RenderEditable.cursorOffset' doesn't exist at '/Shaft/EditableText/cursorOffset'
--> Sources/Shaft/Widgets/Text/EditableText.swift:908:16-908:43
906 | public let cursorOpacityAnimates: Bool
907 |
908 + /// See: ``RenderEditable.cursorOffset``
909 | public let cursorOffset: Offset?
910 |
warning: 'RenderEditable.paintCursorAboveText' doesn't exist at '/Shaft/EditableText/paintCursorAboveText'
--> Sources/Shaft/Widgets/Text/EditableText.swift:911:16-911:51
909 | public let cursorOffset: Offset?
910 |
911 + /// See: ``RenderEditable.paintCursorAboveText``
912 | public let paintCursorAboveText: Bool
913 |
warning: 'FlutterView' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:9:67-9:78
7 | // found in the LICENSE file.
8 |
9 + /// Bootstraps a render tree that is rendered into the provided ``FlutterView``.
10 | ///
11 | /// The content rendered into that view is determined by the provided ``child``.
warning: 'LookupBoundary' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:12:35-12:49
10 | ///
11 | /// The content rendered into that view is determined by the provided ``child``.
12 + /// Descendants within the same ``LookupBoundary`` can look up the view they are
13 | /// rendered into via ``View/of`` and ``View/maybeOf``.
14 | ///
warning: 'of' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:13:30-13:32
11 | /// The content rendered into that view is determined by the provided ``child``.
12 | /// Descendants within the same ``LookupBoundary`` can look up the view they are
13 + /// rendered into via ``View/of`` and ``View/maybeOf``.
14 | ///
15 | /// The provided ``child`` is wrapped in a ``MediaQuery`` constructed from the given
warning: 'maybeOf' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:13:46-13:53
11 | /// The content rendered into that view is determined by the provided ``child``.
12 | /// Descendants within the same ``LookupBoundary`` can look up the view they are
13 + /// rendered into via ``View/of`` and ``View/maybeOf``.
| ╰─suggestion: Replace 'maybeOf' with 'maybeOf(_:)'
14 | ///
15 | /// The provided ``child`` is wrapped in a ``MediaQuery`` constructed from the given
warning: 'of' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/View.swift:18:44-18:46
16 | /// ``view``.
17 | ///
18 + /// For most use cases, using ``MediaQuery/of``, or its associated "...Of" methods
19 | /// are a more appropriate way of obtaining the information that a ``FlutterView``
20 | /// exposes. For example, using ``MediaQuery/sizeOf`` will expose the _logical_
warning: 'FlutterView' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:19:70-19:81
17 | ///
18 | /// For most use cases, using ``MediaQuery/of``, or its associated "...Of" methods
19 + /// are a more appropriate way of obtaining the information that a ``FlutterView``
20 | /// exposes. For example, using ``MediaQuery/sizeOf`` will expose the _logical_
21 | /// device size ([MediaQueryData.size]) rather than the physical size
warning: 'sizeOf' doesn't exist at '/Shaft/MediaQuery'
--> Sources/Shaft/Widgets/View.swift:20:46-20:52
18 | /// For most use cases, using ``MediaQuery/of``, or its associated "...Of" methods
19 | /// are a more appropriate way of obtaining the information that a ``FlutterView``
20 + /// exposes. For example, using ``MediaQuery/sizeOf`` will expose the _logical_
| ╰─suggestion: Replace 'sizeOf' with 'sizeOf(_:)'
21 | /// device size ([MediaQueryData.size]) rather than the physical size
22 | /// ([FlutterView.physicalSize]). Similarly, while [FlutterView.padding] conveys
warning: 'FlutterView' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:28:12-28:23
26 | /// widget adjusts the values for its various children.
27 | ///
28 + /// Each ``FlutterView`` can be associated with at most one [View] widget in the
29 | /// widget tree. Two or more [View] widgets configured with the same
30 | /// ``FlutterView`` must never exist within the same widget tree at the same time.
warning: 'FlutterView' doesn't exist at '/Shaft/View'
--> Sources/Shaft/Widgets/View.swift:30:7-30:18
28 | /// Each ``FlutterView`` can be associated with at most one [View] widget in the
29 | /// widget tree. Two or more [View] widgets configured with the same
30 + /// ``FlutterView`` must never exist within the same widget tree at the same time.
31 | /// This limitation is enforced by a [GlobalObjectKey] that derives its identity
32 | /// from the ``view`` provided to this widget.
Finished building documentation for 'Shaft' (5.29s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/8] Write snippet-extract-tool-entitlement.plist
[1/8] Write sources
[4/8] Write swift-version--6988338F2F200930.txt
[6/53] Emitting module SymbolKit
[7/57] Compiling SymbolKit SemanticVersion.swift
[8/57] Compiling SymbolKit AccessControl.swift
[9/57] Compiling SymbolKit Availability.swift
[10/57] Compiling SymbolKit AvailabilityItem.swift
[11/57] Compiling SymbolKit Domain.swift
[12/57] Compiling SymbolKit DeclarationFragments.swift
[13/57] Compiling SymbolKit Fragment.swift
[14/57] Compiling SymbolKit FragmentKind.swift
[15/57] Compiling SymbolKit FunctionParameter.swift
[16/57] Compiling SymbolKit FunctionSignature.swift
[17/57] Compiling SymbolKit Names.swift
[18/57] Compiling SymbolKit SPI.swift
[19/57] Compiling SymbolKit Snippet.swift
[20/57] Compiling SymbolKit Extension.swift
[21/57] Compiling SymbolKit Identifier.swift
[22/57] Compiling SymbolKit KindIdentifier.swift
[23/57] Compiling SymbolKit Location.swift
[24/57] Compiling SymbolKit Mutability.swift
[25/57] Compiling SymbolKit SourceRange.swift
[26/57] Compiling SymbolKit Metadata.swift
[27/57] Compiling SymbolKit Module.swift
[28/57] Compiling SymbolKit OperatingSystem.swift
[29/57] Compiling SymbolKit Platform.swift
[30/57] Compiling SymbolKit Relationship.swift
[31/57] Compiling SymbolKit RelationshipKind.swift
[32/57] Compiling SymbolKit SourceOrigin.swift
[33/57] Compiling SymbolKit GenericConstraints.swift
[34/57] Compiling SymbolKit Swift.swift
[35/57] Compiling SymbolKit Mixin+Equals.swift
[36/57] Compiling SymbolKit Mixin+Hash.swift
[37/57] Compiling SymbolKit Mixin.swift
[38/57] Compiling SymbolKit LineList.swift
[39/57] Compiling SymbolKit Position.swift
[40/57] Compiling SymbolKit Symbol.swift
[41/57] Compiling SymbolKit SymbolKind.swift
[42/57] Compiling SymbolKit SymbolGraph.swift
[43/57] Compiling SymbolKit GraphCollector.swift
[44/57] Compiling SymbolKit GenericConstraint.swift
[45/57] Compiling SymbolKit GenericParameter.swift
[46/57] Compiling SymbolKit Generics.swift
[47/57] Compiling SymbolKit Namespace.swift
[48/57] Compiling SymbolKit UnifiedSymbol+Encodable.swift
[49/57] Compiling SymbolKit UnifiedSymbol.swift
[50/57] Compiling SymbolKit UnifiedSymbolGraph+Encodable.swift
[51/57] Compiling SymbolKit UnifiedSymbolGraph.swift
[52/57] Compiling Snippets SnippetParser.swift
[53/57] Compiling Snippets Snippet.swift
[54/57] Emitting module Snippets
[55/61] Compiling snippet_extract URL+Status.swift
[56/61] Compiling snippet_extract SymbolGraph+Snippet.swift
[57/61] Emitting module snippet_extract
[58/61] Compiling snippet_extract SnippetBuildCommand.swift
[58/61] Write Objects.LinkFileList
[59/61] Linking snippet-extract-tool
[60/61] Applying snippet-extract-tool
Build of product 'snippet-extract' complete! (3.77s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'Shaft' complete! (1.60s)
Target: ShaftSetup
Extracting symbol information for 'ShaftSetup'...
Finished extracting symbol information for 'ShaftSetup'. (58.87s)
Building documentation for 'ShaftSetup'...
Finished building documentation for 'ShaftSetup' (0.04s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (1.03s)
Building for debugging...
[0/2] Write swift-version--6988338F2F200930.txt
[1/2] Compiling CSkia utils.cpp
Build of target: 'ShaftSetup' complete! (2.85s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/linkable-paths.json
Target: CSkia
Extracting symbol information for 'CSkia'...
Finished extracting symbol information for 'CSkia'. (2.78s)
Building documentation for 'CSkia'...
Finished building documentation for 'CSkia' (0.05s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (1.09s)
Building for debugging...
[0/1] Compiling CSkia utils.cpp
Build of target: 'CSkia' complete! (2.73s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/linkable-paths.json
Target: ShaftLucide
Extracting symbol information for 'ShaftLucide'...
Finished extracting symbol information for 'ShaftLucide'. (2.21s)
Building documentation for 'ShaftLucide'...
Finished building documentation for 'ShaftLucide' (0.07s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (1.07s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'ShaftLucide' complete! (2.07s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/linkable-paths.json
Target: ShaftMarkdown
Extracting symbol information for 'ShaftMarkdown'...
Finished extracting symbol information for 'ShaftMarkdown'. (1.91s)
Building documentation for 'ShaftMarkdown'...
Finished building documentation for 'ShaftMarkdown' (0.12s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (1.03s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'ShaftMarkdown' complete! (1.72s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/linkable-paths.json
Target: ShaftSDL3
Extracting symbol information for 'ShaftSDL3'...
Finished extracting symbol information for 'ShaftSDL3'. (1.93s)
Building documentation for 'ShaftSDL3'...
Finished building documentation for 'ShaftSDL3' (0.08s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (1.03s)
Building for debugging...
[0/1] Write swift-version--6988338F2F200930.txt
Build of target: 'ShaftSDL3' complete! (1.75s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/linkable-paths.json
Target: ShaftSkia
Extracting symbol information for 'ShaftSkia'...
Finished extracting symbol information for 'ShaftSkia'. (3.44s)
Building documentation for 'ShaftSkia'...
warning: 'Renderer' doesn't exist at '/ShaftSkia/SkiaGLRenderer'
--> Sources/ShaftSkia/SkiaRenderer+GL.swift:9:28-9:36
7 | import Shaft
8 |
9 + /// An implementation of ``Renderer`` using Skia as the backend.
10 | public class SkiaGLRenderer: SkiaRenderer, GLRenderer {
11 | /// Cached GrDirectContext for creating surfaces.
warning: 'Renderer' doesn't exist at '/ShaftSkia/SkiaRenderer'
--> Sources/ShaftSkia/SkiaRenderer.swift:9:28-9:36
7 | import Shaft
8 |
9 + /// An implementation of ``Renderer`` using Skia as the backend.
10 | public class SkiaRenderer: Renderer {
11 | public init() {
Finished building documentation for 'ShaftSkia' (0.09s)
Generated documentation archive at:
/Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
Building for debugging...
[0/3] Write swift-version--6988338F2F200930.txt
Build of product 'snippet-extract' complete! (1.03s)
Building for debugging...
[0/2] Write swift-version--6988338F2F200930.txt
[1/2] Compiling CSkia utils.cpp
Build of target: 'ShaftSkia' complete! (2.70s)
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/index/index.json
Successfully merged into /Users/admin/builder/spi-builder-workspace/.docs-staging/shaftui/shaft/main/linkable-paths.json
18174
104 /Users/admin/builder/spi-builder-workspace/.docs/shaftui/shaft/main
✅ Doc result (uploading) reported
========================================
SyncDocs
========================================
Doc archive source directory: $PWD/.docs/shaftui/shaft/main
File count: 18174
Doc size: 104.0MB
Preparing doc bundle ...
Uploading prod-shaftui-shaft-main-54bab435.zip to s3://spi-docs-inbox/prod-shaftui-shaft-main-54bab435.zip
Copying... [10%]
Copying... [20%]
Copying... [30%]
Copying... [40%]
Copying... [50%]
Copying... [60%]
Copying... [70%]
Copying... [80%]
Copying... [90%]
Copying... [100%]
Done.