+- ApexFile[@DefiningType = "TriggerWithMethod", @RealLoc = true]
   +- UserTrigger[@DefiningType = "TriggerWithMethod", @Image = "TriggerWithMethod", @Nested = false, @RealLoc = true, @SimpleName = "TriggerWithMethod", @TargetName = "DraftEmailMessage__c", @Usages = (TriggerUsage.AFTER_UPDATE)]
      +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
      +- Field[@DefiningType = "TriggerWithMethod", @Image = "body", @Name = "body", @RealLoc = true, @Type = "String", @Value = "email body"]
      |  +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
      +- Method[@Arity = 2, @CanonicalName = "sendEmail", @Constructor = false, @DefiningType = "TriggerWithMethod", @Image = "sendEmail", @RealLoc = true, @ReturnType = "void", @StaticInitializer = false]
      |  +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 2, @Override = false, @Private = true, @Protected = false, @Public = false, @RealLoc = true, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
      |  +- Parameter[@DefiningType = "TriggerWithMethod", @Image = "demInstance", @RealLoc = true, @Type = "DraftEmailMessage__c"]
      |  |  +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
      |  +- Parameter[@DefiningType = "TriggerWithMethod", @Image = "emailBody", @RealLoc = true, @Type = "String"]
      |  |  +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
      |  +- BlockStatement[@CurlyBrace = true, @DefiningType = "TriggerWithMethod", @RealLoc = true]
      +- Method[@Arity = 0, @CanonicalName = "invoke", @Constructor = false, @DefiningType = "TriggerWithMethod", @Image = "invoke", @RealLoc = false, @ReturnType = "void", @StaticInitializer = false]
         +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
         +- FieldDeclarationStatements[@DefiningType = "TriggerWithMethod", @RealLoc = true, @TypeArguments = (), @TypeName = "String"]
         |  +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
         |  +- FieldDeclaration[@DefiningType = "TriggerWithMethod", @Image = "body", @Name = "body", @RealLoc = true]
         |     +- LiteralExpression[@Boolean = false, @Decimal = false, @DefiningType = "TriggerWithMethod", @Double = false, @Image = "email body", @Integer = false, @LiteralType = LiteralType.STRING, @Long = false, @Name = null, @Null = false, @RealLoc = true, @String = true]
         |     +- VariableExpression[@DefiningType = "TriggerWithMethod", @Image = "body", @RealLoc = true]
         |        +- EmptyReferenceExpression[@DefiningType = null, @RealLoc = false]
         +- ForEachStatement[@DefiningType = "TriggerWithMethod", @RealLoc = true]
            +- VariableDeclarationStatements[@DefiningType = "TriggerWithMethod", @RealLoc = true]
            |  +- ModifierNode[@Abstract = false, @DefiningType = "TriggerWithMethod", @DeprecatedTestMethod = false, @Final = false, @Global = false, @InheritedSharing = false, @Modifiers = 0, @Override = false, @Private = false, @Protected = false, @Public = false, @RealLoc = false, @Static = false, @Test = false, @TestOrTestSetup = false, @Transient = false, @Virtual = false, @WebService = false, @WithSharing = false, @WithoutSharing = false]
            |  +- VariableDeclaration[@DefiningType = "TriggerWithMethod", @Image = "demInstance", @RealLoc = true, @Type = "DraftEmailMessage__c"]
            |     +- VariableExpression[@DefiningType = "TriggerWithMethod", @Image = "demInstance", @RealLoc = true]
            |        +- EmptyReferenceExpression[@DefiningType = null, @RealLoc = false]
            +- VariableExpression[@DefiningType = "TriggerWithMethod", @Image = "demInstance", @RealLoc = true]
            |  +- EmptyReferenceExpression[@DefiningType = null, @RealLoc = false]
            +- BlockStatement[@CurlyBrace = true, @DefiningType = "TriggerWithMethod", @RealLoc = true]
            |  +- ExpressionStatement[@DefiningType = "TriggerWithMethod", @RealLoc = true]
            |     +- MethodCallExpression[@DefiningType = "TriggerWithMethod", @FullMethodName = "sendEmail", @InputParametersSize = 2, @MethodName = "sendEmail", @RealLoc = true]
            |        +- EmptyReferenceExpression[@DefiningType = null, @RealLoc = false]
            |        +- VariableExpression[@DefiningType = "TriggerWithMethod", @Image = "demInstance", @RealLoc = true]
            |        |  +- EmptyReferenceExpression[@DefiningType = null, @RealLoc = false]
            |        +- VariableExpression[@DefiningType = "TriggerWithMethod", @Image = "emailBody", @RealLoc = true]
            |           +- EmptyReferenceExpression[@DefiningType = null, @RealLoc = false]
            +- TriggerVariableExpression[@DefiningType = "TriggerWithMethod", @RealLoc = true]
