package org.jruby.parser;

import org.jruby.ast.BlockArgNode;
import org.jruby.ast.KeywordRestArgNode;
import org.jruby.ast.ListNode;
import org.jruby.lexer.yacc.ISourcePosition;

Simple struct to hold values until they can be inserted into the AST.
/** * Simple struct to hold values until they can be inserted into the AST. */
public class ArgsTailHolder { private ISourcePosition position; private BlockArgNode blockArg; private ListNode keywordArgs; private KeywordRestArgNode keywordRestArg; public ArgsTailHolder(ISourcePosition position, ListNode keywordArgs, KeywordRestArgNode keywordRestArg, BlockArgNode blockArg) { this.position = position; this.blockArg = blockArg; this.keywordArgs = keywordArgs; this.keywordRestArg = keywordRestArg; } public ISourcePosition getPosition() { return position; } public BlockArgNode getBlockArg() { return blockArg; } public ListNode getKeywordArgs() { return keywordArgs; } public KeywordRestArgNode getKeywordRestArgNode() { return keywordRestArg; }
Does this holder support either keyword argument types
/** * Does this holder support either keyword argument types */
public boolean hasKeywordArgs() { return keywordArgs != null || keywordRestArg != null; } }