コード例 #1
0
        public override AST.RuleTree VisitDialogLine([NotNull] WordLangParser.DialogLineContext context)
        {
            var dialog = new AST.Dialog();


            dialog.Speaker = new AST.FieldString()
            {
                Value      = context.text().NAME().CombineTokens(),
                StartIndex = context.text().NAME().First().Symbol.StartIndex,
                StopIndex  = context.text().NAME().Last().Symbol.StopIndex
            };
            dialog.Line = new AST.FieldString()
            {
                Value      = context.multilineText().GetText(),
                StartIndex = context.multilineText().Start.StartIndex,
                StopIndex  = context.multilineText().Stop.StopIndex
            };

            return(dialog);
        }
コード例 #2
0
 public bool Equals(Dialog other)
 {
     return(other != null &&
            other.Speaker.Equals(Speaker) &&
            other.Line.Equals(Line));
 }