public static bool IsSpliceListSequence(Token token, out Token.Operator op2, out Token body) { var _op1 = token as Token.Operator; if (_op1 != null && string.Equals(_op1.name, "..", StringComparison.InvariantCulture)) { var _op2 = _op1.Next as Token.Operator; if (_op2 != null && string.Equals(_op2.name, "$", StringComparison.InvariantCulture) && _op2.Next != null) { op2 = _op2; body = _op2.Next; return(true); } } op2 = null; body = null; return(false); }
public static bool IsQuotationWithHeader(Token.QuoteGroup group, out Token.Identifier type, out Token.Operator colon, out Token body) { var content = group.Child as Token.LooseGroup; if (content != null) { var _type = content.Child as Token.Identifier; if (_type != null && _quotationTypes.Contains(_type.name)) { var _colon = _type.Next as Token.Operator; if (_colon != null && string.Equals(_colon.name, ":", StringComparison.InvariantCulture)) { type = _type; colon = _colon; body = _colon.Next; return(true); } } } type = null; colon = null; body = null; return(false); }