Thanks for the reply!!
I did attempt what you suggested...
Attempted exactly as suggested:
return (ItemStack.is(TagKeyReference));
requiring a implimentation of:
public static final TagKey<Item> TagKeyReference = ItemTags.create(new ResourceLocation("modName", "anyCustomTag")); (with proper imports of course)
As well as
return (itemStack.is(anyCustomTag));
and
return (ItemStack.is("anyCustomTag"));
All of which returned an error of: non-static method cannot be referenced from a static context.
It seems that the ItemStack.is is from a static boolean in vanilla minecraft code which can't be referenced by the non-static field required by AbstractContainerMenu Supplier. (as otherwise it goes way wonkey with a mess of errors, but just to be sure I did attempt to make this static as well.)
Also attempted as:
public final TagKey<Item> ItemTagReference = ItemTags.create(new ResourceLocation("modName", "anyCustomTag"));
to remove this "static" field just to be sure along with all methods of return listed above. All of which returned the same error as above.
Also, correct me if I'm wrong, but as I understand it stack.getItem() is referencing the ItemStack that you're attempting to provide to the slot, therefore I'm not calling Item.is(TagKey<Item>), I'm already referencing ItemStack.is(TagKey<Item>) with the stack.getItem().is code. stack.getItem() is found in the SlotItemHandler of Forge being called by the customSlots reference of new SlotItemHandler which, according to the Forge code, references an itemStack, not an Item direct.