For the veal, heat the oil in a heavy-based casserole over a medium heat.
Sprinkle the flour onto a plate and dredge the shins in it until coated.
Add the coated shins to the pan and fry for 4-5 minutes on each side, or until browned all over. Remove from the pan and set aside.
Add the shallots and garlic to the pan the veal shins were cooked in and fry for 4-5 minutes, or until golden-brown.
Add the tomatoes, thyme, star anise and peppercorns and stir well. Reduce the heat until the mixture is just simmering and continue to cook for 6-8 minutes.
Add the red wine and return the mixture to a simmer. Continue to simmer until the volume of liquid has reduced by three quarters.
Add the cold beef stock and return the browned veal to the pan. Slowly return the mixture to a simmer (it should take about 20 minutes to return the mixture to a simmer).
When the stew has started a simmer, continue to simmer for 1-1¼ hours, or until the veal shins are tender.
When the veal shins are tender, remove them from the pan and set aside on a plate. Cover and keep warm.
Strain the cooking liquid through a fine sieve into a clean pan. Bring the strained liquid to the boil and continue to boil until it has thickened and its volume has reduced by half.
Meanwhile, for the vegetables, heat the oil in a separate frying pan over a medium heat. Add the aubergine cubes and fry for 3-4 minutes, or until softened. Add the cooked aubergines to the reduced veal sauce.
Add the peppers to the pan the aubergines were cooked in and fry, stirring well, for 3-4 minutes, until softened. Add the cooked peppers to the veal sauce.
Add the tomatoes and mushrooms to the veal sauce. Return the cooked veal shins to the veal sauce and simmer for a further 5-6 minutes, or until the tomatoes and mushrooms have softened and the veal shins have warmed through. Sprinkle over the chopped basil.
To serve, spoon the mashed potatoes into the centre of each of four serving plates. Spoon over the veal 'ratatouille'.