Grease the pudding basin with butter and place a buttered disc of baking paper in the bottom of the basin. This is to ensure the top of your pudding won’t stick when you turn it out.
Place the cream, spices and salt in the saucepan and bring to the boil. Reduce the heat and simmer, while stirring, for a few minutes. Remove from the heat to cool slightly.
Place the eggs, egg yolk and sugar in the large mixing bowl and beat with the electric hand whisk until thick and pale in colour.
When the cream mixture has cooled slightly, pour 2 to 3 tablespoons of it into the egg mixture, whisking as you pour until the cream is well incorporated. This will temper the eggs so they won’t curdle.
Continue to add the cream to the egg mixture, a bit at a time, whisking as you pour, until all the cream is incorporated into the eggs. Set the custard aside.
Slice the bread into approximately 1cm slices and trim the crusts.
Butter the bread generously with the softened butter.
Place a layer of bread, butter-side-down, into the bottom of the pudding basin. Fill any gaps with smaller pieces of bread.
Sprinkle a layer of raisins and currants on top of the first bread layer.
Repeat the bread layer once more, placing butter-side-down and top with another raisin and currant layer.
Once there are two layers of bread and two layers of fruit, pour enough custard liquid to fill the basin just to the top of the bread.
Repeat layering as above and, again, cover with just enough custard to cover the bread layer. Continue until the basin is full. You should end with a layer of bread, butter-side up.
Allow to stand for half an hour to allow the custard to soak into the bread thoroughly.
You may have some custard left but as the pudding is left to soak in the custard you should find you can keep topping it up with the rest of it.
Cover with a disc of buttered baking paper.
Make a pleat in a piece of kitchen foil and cover the basin with it, making sure the pleat is place in the centre of the basin. Secure with string tied round the edge of the basin, ensuring you create a ‘handle’ with which you can remove the pudding from the hot water.
Place the pudding in a large-lidded saucepan and fill with boiling water two thirds up the sides of the pudding basin.
Cover the saucepan and steam for 1 hour making sure you check the level of the water and top up from the kettle if necessary.
Allow to cool slightly before taking the pudding out of the hot water.
Remove the covering and turn out onto a serving dish.