Skip to content

Commit 968f7c2

Browse files
committed
fix: add error_code_group to returned result objects
1 parent bea9d28 commit 968f7c2

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

ResultContainer/ResultContainer.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -986,6 +986,7 @@ def __init__(
986986
self._g = error_code_group
987987
if success and isinstance(value, ResultErr):
988988
success = False
989+
self._g = value._g
989990
if _empty_init:
990991
self._success = None
991992
self._Ok = ""
@@ -1011,8 +1012,8 @@ def __init__(
10111012
)
10121013

10131014
@classmethod
1014-
def Ok(cls, value):
1015-
return cls(value)
1015+
def Ok(cls, value, error_code_group=1):
1016+
return cls(value, error_code_group=error_code_group)
10161017

10171018
@classmethod
10181019
def Err(cls, error_msg, error_code=1, error_code_group=1):
@@ -1094,10 +1095,10 @@ def apply(self, ok_func, *args, **kwargs):
10941095
try:
10951096
return Result(ok_func(self._Ok, *args, **kwargs), error_code_group=self._g)
10961097
except Exception as e:
1097-
err = Result.Err("Result.apply exception.", self.error_code("Apply"))
1098+
err = Result.Err("Result.apply exception.", self.error_code("Apply"), self._g)
10981099
err.add_Err_msg(f"{type(e).__name__}: {e}", self.error_code("Apply"), add_traceback=False)
10991100
return err
1100-
res = Result.Err(self._Err)
1101+
res = Result(self._Err)
11011102
res.add_Err_msg("Result.apply on Err.", self.error_code("Apply"))
11021103
return res
11031104

@@ -1125,7 +1126,7 @@ def apply_or_else(self, err_func, ok_func, *args, **kwargs):
11251126
try:
11261127
return Result(err_func(err, *args, **kwargs), error_code_group=self._g)
11271128
except Exception as e:
1128-
err = Result.Err("Result.apply_or_else exception.", self.error_code("Apply"))
1129+
err = Result.Err("Result.apply_or_else exception.", self.error_code("Apply"), self._g)
11291130
err.add_Err_msg(f"{type(e).__name__}: {e}", self.error_code("Apply"), add_traceback=False)
11301131
return err
11311132

@@ -1134,7 +1135,7 @@ def apply_Err(self, err_func, *args, **kwargs):
11341135
if self._success:
11351136
return self.copy()
11361137
try:
1137-
return Result.Ok(err_func(self._Err, *args, **kwargs))
1138+
return Result(err_func(self._Err, *args, **kwargs), error_code_group=self._g)
11381139
except Exception as e:
11391140
err = self.copy()
11401141
err.add_Err_msg("Result.apply_err exception.", self.error_code("Map"), add_traceback=True)
@@ -1145,7 +1146,7 @@ def map(self, ok_func):
11451146
self._empty_error()
11461147
if self._success:
11471148
return Result(ok_func(self._Ok), error_code_group=self._g)
1148-
res = Result.Err(self._Err)
1149+
res = Result(self._Err)
11491150
res.add_Err_msg("Result.map on Err.", self.error_code("Map"))
11501151
return res
11511152

@@ -1165,7 +1166,7 @@ def map_Err(self, err_func):
11651166
self._empty_error()
11661167
if self._success:
11671168
return self.copy()
1168-
return Result.Ok(err_func(self._Err), error_code_group=self._g)
1169+
return Result(err_func(self._Err), error_code_group=self._g)
11691170

11701171
def iter(self):
11711172
self._empty_error()

0 commit comments

Comments
 (0)