Preheat the oven to 200°C (fan 180°C)/400°F (fan 350°C)/gas mark 6.
Drizzle a little vegetable oil on to the base of a roasting tin.
Add the sweet potato pieces, season with salt and mix together thoroughly.
Roast for 15 minutes, until cooked through. Set aside.
Blend the onion, ginger, garlic and chillies together in a food processor to form a smooth paste.
Heat a splash of oil in a large saucepan, add the curry leaves and fry quickly for 10–15 seconds, being careful not to burn them.
Add the curry paste and fry for 6–8 minutes over a medium heat until toasted and fragrant.
Add the turmeric, cinnamon and curry powder, season with salt and fry for a further 2–3 minutes, then stir in the coconut cream, creamed coconut and sugar.
Bring to a simmer and cook for 15 minutes, until the curry has thickened and reduced.
Now, cook the rice. Place the basmati in a saucepan, cover with the boiling water, bring back to the boil and simmer, covered, for 10–12 minutes, until the water has evaporated and the rice is tender.
Meanwhile, stir the cooked sweet potato into the curry and cook for a further 6–8 minutes until heated through. Spoon the curry into bowls, garnish with roasted cashew nuts and serve with the rice, and (optional) garlic rotis and tomato and coconut sambal.