Generously season all sides of the pork roast with the rub.
When ready to cook, start the Traeger grill on Smoke with the lid open until the fire is established (4 to 5 minutes). Set the temperature to 225°F and preheat, lid closed, for 10 to 15 minutes.
Put the roast on the grill grate, fat-side up, and smoke for 3 hours, spraying with apple juice every hour after the first hour. Transfer to a disposable aluminum foil pan large enough to hold the roast.
Increase the temperature to 250°F, and roast for 6 to 8 additional hours, or until an instant-read meat thermometer inserted in the thickest part, but not touching bone, registers 190°F. If the pork starts to brown too much, cover it loosely with aluminum foil.
Carefully transfer the pork roast to a cutting board and let it rest for 20 minutes. Pour the juices from the bottom of the pan into a gravy separator.
With your hands (preferably protected from the heat with lined, heavy-duty rubber gloves), pull the pork into chunks. Discard the bone and any lumps of fat, including the cap.
Pull each chunk into shreds, and transfer to a large mixing bowl. Season with additional rub and moisten with the reserved pork juice. (Discard any fat that has floated to the top.)
Add barbecue sauce, if desired, and mix well. Or serve the barbecue sauce on the side.
Pile the pork mixture on the hamburger buns, serve with coleslaw, and enjoy.