Skip to content

Commit f89f996

Browse files
authored
[Rust] Updated package dependencies (#4114)
1 parent 0215b25 commit f89f996

File tree

5 files changed

+36
-47
lines changed

5 files changed

+36
-47
lines changed

src/Fable.Transforms/Rust/Fable2Rust.fs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2025,7 +2025,7 @@ module Util =
20252025
| MaybeCasted(Fable.IdentExpr ident) -> isRefScoped ctx ident.Name
20262026
| _ -> false
20272027

2028-
let targetIsRef = ctx.IsParamByRefPreferred
2028+
let targetIsRef = ctx.IsParamByRefPreferred //&& not implCopy
20292029
// || Option.exists (isByRefType com) tOpt
20302030
// || isAddrOfExpr e
20312031

@@ -2055,13 +2055,13 @@ module Util =
20552055
let ctx = { ctx with IsParamByRefPreferred = false }
20562056
com.TransformExpr(ctx, e)
20572057

2058-
match implCopy, implClone, sourceIsRef, targetIsRef, mustClone, isUnreachable with
2059-
| _, _, false, true, _, false -> expr |> mkAddrOfExpr
2060-
| _, _, true, true, _, false -> expr
2061-
| _, _, true, false, _, false -> expr |> makeClone
2062-
| false, true, _, false, true, false -> expr |> makeClone
2058+
match sourceIsRef, targetIsRef, implCopy, implClone, mustClone, isUnreachable with
2059+
| true, true, _, _, _, false -> expr
2060+
| false, true, _, _, _, false -> expr |> mkAddrOfExpr
2061+
| true, false, _, _, _, false -> expr |> makeClone
2062+
| false, false, false, true, true, false -> expr |> makeClone
20632063
| _ -> expr
2064-
// |> BLOCK_COMMENT_SUFFIX (sprintf implCopy: %b, "implClone: %b, sourceIsRef; %b, targetIsRef: %b, isOnlyRef: %b (%i), isUnreachable: %b" implCopy implClone sourceIsRef targetIsRef isOnlyRef isUnreachable varAttrs.UsageCount)
2064+
// |> BLOCK_COMMENT_SUFFIX (sprintf "sourceIsRef: %b, targetIsRef: %b, implCopy: %b, implClone: %b, mustClone: %b, isUnreachable: %b" sourceIsRef targetIsRef implCopy implClone mustClone isUnreachable)
20652065

20662066

20672067
// let extractBaseExprFromBaseCall (com: IRustCompiler) (ctx: Context) (baseType: Fable.DeclaredType option) baseCall =
@@ -2354,15 +2354,12 @@ module Util =
23542354

23552355
let isByRefPreferred =
23562356
membOpt
2357-
|> Option.map (fun memberInfo ->
2358-
memberInfo.Attributes
2359-
|> Seq.exists (fun a -> a.Entity.FullName = Atts.rustByRef)
2360-
)
2357+
|> Option.map (fun memb -> memb.Attributes |> Seq.exists (fun a -> a.Entity.FullName = Atts.rustByRef))
23612358
|> Option.defaultValue false
23622359

23632360
let argParams =
23642361
membOpt
2365-
|> Option.map (fun memberInfo -> memberInfo.CurriedParameterGroups |> List.concat)
2362+
|> Option.map (fun memb -> memb.CurriedParameterGroups |> List.concat)
23662363
|> Option.defaultValue []
23672364

23682365
let ctx =

src/fable-library-rust/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,11 @@ num-bigint = { version = "0.4", optional = true }
2727
num-integer = { version = "0.1", optional = true }
2828
num-traits = { version = "0.2", optional = true }
2929
regex = { version = "1.11", optional = true }
30-
rust_decimal = { version = "1.36", features = ["maths"], default-features = false, optional = true }
30+
rust_decimal = { version = "1.37", features = ["maths"], default-features = false, optional = true }
3131
startup = { version = "0.1", path = "vendored/startup", optional = true }
3232

3333
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
34-
uuid = { version = "1.14", features = ["v4"], default-features = false, optional = true }
34+
uuid = { version = "1.16", features = ["v4"], default-features = false, optional = true }
3535

3636
[target.'cfg(target_arch = "wasm32")'.dependencies]
37-
uuid = { version = "1.14", features = ["v4", "js"], default-features = false, optional = true }
37+
uuid = { version = "1.16", features = ["v4", "js"], default-features = false, optional = true }

src/fable-library-rust/src/List.fs

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -331,22 +331,22 @@ let filter (predicate: 'T -> bool) (xs: 'T list) =
331331
)
332332

333333
let map (mapping: 'T -> 'U) (xs: 'T list) =
334-
let gen xs =
334+
let generator xs =
335335
if isEmpty xs then
336336
None
337337
else
338338
Some(mapping (head xs), tail xs)
339339

340-
unfold gen xs
340+
unfold generator xs
341341

342342
let mapIndexed (mapping: int -> 'T -> 'U) (xs: 'T list) =
343-
let gen (i, xs) =
343+
let generator (i, xs) =
344344
if isEmpty xs then
345345
None
346346
else
347347
Some(mapping i (head xs), (i + 1, tail xs))
348348

349-
unfold gen (0, xs)
349+
unfold generator (0, xs)
350350

351351
let collect (mapping: 'T -> 'U list) (xs: 'T list) =
352352
let mutable root = None
@@ -372,44 +372,44 @@ let collect (mapping: 'T -> 'U list) (xs: 'T list) =
372372
let indexed (xs: 'T list) = mapIndexed (fun i x -> (i, x)) xs
373373

374374
let map2 (mapping: 'T1 -> 'T2 -> 'U) (xs: 'T1 list) (ys: 'T2 list) =
375-
let gen (xs, ys) =
375+
let generator (xs, ys) =
376376
if (isEmpty xs) || (isEmpty ys) then
377377
None
378378
else
379379
Some(mapping (head xs) (head ys), (tail xs, tail ys))
380380

381-
unfold gen (xs, ys)
381+
unfold generator (xs, ys)
382382

383383
let mapIndexed2 (mapping: int -> 'T1 -> 'T2 -> 'U) (xs: 'T1 list) (ys: 'T2 list) =
384-
let gen (i, xs, ys) =
384+
let generator (i, xs, ys) =
385385
if (isEmpty xs) || (isEmpty ys) then
386386
None
387387
else
388388
Some(mapping i (head xs) (head ys), (i + 1, tail xs, tail ys))
389389

390-
unfold gen (0, xs, ys)
390+
unfold generator (0, xs, ys)
391391

392392
let map3 (mapping: 'T1 -> 'T2 -> 'T3 -> 'U) (xs: 'T1 list) (ys: 'T2 list) (zs: 'T3 list) =
393-
let gen (xs, ys, zs) =
393+
let generator (xs, ys, zs) =
394394
if (isEmpty xs) || (isEmpty ys) || (isEmpty zs) then
395395
None
396396
else
397397
Some(mapping (head xs) (head ys) (head zs), (tail xs, tail ys, tail zs))
398398

399-
unfold gen (xs, ys, zs)
399+
unfold generator (xs, ys, zs)
400400

401401
let mapFold (mapping: 'State -> 'T -> 'U * 'State) (state: 'State) (xs: 'T list) =
402402
let mutable acc = state
403403

404-
let gen xs =
404+
let generator xs =
405405
if isEmpty xs then
406406
None
407407
else
408408
let m = mapping acc (head xs)
409409
acc <- snd m
410410
Some(fst m, tail xs)
411411

412-
unfold gen xs, acc
412+
unfold generator xs, acc
413413

414414
let mapFoldBack (mapping: 'T -> 'State -> 'U * 'State) (xs: 'T list) (state: 'State) =
415415
let mutable ys = empty ()
@@ -504,13 +504,13 @@ let item index (xs: 'T list) = // xs.root(n)
504504
| Some x -> x
505505

506506
let initialize count (initializer: int -> 'T) =
507-
let gen i =
507+
let generator i =
508508
if i < count then
509509
Some(initializer i, i + 1)
510510
else
511511
None
512512

513-
unfold gen 0
513+
unfold generator 0
514514

515515
let pairwise (xs: 'T list) =
516516
xs |> toArray |> Array.pairwise |> ofArray
@@ -721,7 +721,7 @@ let take count (xs: 'T list) =
721721
if count < 0 then
722722
invalidArg "count" SR.inputMustBeNonNegative
723723

724-
let gen (i, xs: 'T list) =
724+
let generator (i, xs: 'T list) =
725725
if i > 0 then
726726
if isEmpty xs then
727727
invalidArg "list" SR.notEnoughElements
@@ -730,25 +730,25 @@ let take count (xs: 'T list) =
730730
else
731731
None
732732

733-
unfold gen (count, xs)
733+
unfold generator (count, xs)
734734

735735
let takeWhile (predicate: 'T -> bool) (xs: 'T list) =
736-
let gen xs =
736+
let generator xs =
737737
if not (isEmpty xs) && (predicate (head xs)) then
738738
Some(head xs, tail xs)
739739
else
740740
None
741741

742-
unfold gen xs
742+
unfold generator xs
743743

744744
let truncate count (xs: 'T list) =
745-
let gen (i, xs: 'T list) =
745+
let generator (i, xs: 'T list) =
746746
if i > 0 && not (isEmpty xs) then
747747
Some(head xs, (i - 1, tail xs))
748748
else
749749
None
750750

751-
unfold gen (count, xs)
751+
unfold generator (count, xs)
752752

753753
let getSlice (lower: int option) (upper: int option) (xs: 'T list) =
754754
match lower, upper with

src/fable-library-rust/src/Native.rs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -173,19 +173,11 @@ pub mod Native_ {
173173
}
174174

175175
pub fn min<T: PartialOrd>(x: T, y: T) -> T {
176-
if x < y {
177-
x
178-
} else {
179-
y
180-
}
176+
if x < y { x } else { y }
181177
}
182178

183179
pub fn max<T: PartialOrd>(x: T, y: T) -> T {
184-
if x > y {
185-
x
186-
} else {
187-
y
188-
}
180+
if x > y { x } else { y }
189181
}
190182

191183
pub fn equals<T: PartialEq>(x: T, y: T) -> bool {

src/fable-library-rust/src/Seq.fs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -756,13 +756,13 @@ let head (xs: 'T seq) =
756756
| None -> invalidArg "source" SR.inputSequenceEmpty
757757

758758
let initialize count f =
759-
let gen i =
759+
let generator i =
760760
if (i < count) then
761761
Some(f i, i + 1)
762762
else
763763
None
764764

765-
unfold gen 0
765+
unfold generator 0
766766

767767
let initializeInfinite f = initialize (System.Int32.MaxValue) f
768768

0 commit comments

Comments
 (0)