souffle  2.0.2-371-g6315b36
Argument.h
Go to the documentation of this file.
1 /*
2  * Souffle - A Datalog Compiler
3  * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved
4  * Licensed under the Universal Permissive License v 1.0 as shown at:
5  * - https://opensource.org/licenses/UPL
6  * - <souffle root>/licenses/SOUFFLE-UPL.txt
7  */
8 
9 /************************************************************************
10  *
11  * @file Argument.h
12  *
13  * Defines the abstract class for arguments
14  *
15  ***********************************************************************/
16 
17 #pragma once
18 
19 #include "ast/Node.h"
20 
21 namespace souffle::ast {
22 
23 /**
24  * @class Argument
25  * @brief An abstract class for arguments
26  */
27 class Argument : public Node {
28 public:
29  using Node::Node;
30 
31  /** Create clone */
32  Argument* clone() const override = 0;
33 };
34 
35 } // namespace souffle::ast
Node.h
souffle::ast::Node::Node
Node(SrcLocation loc={})
Definition: Node.h:42
souffle::ast
Definition: Aggregator.h:35
souffle::ast::Argument::clone
Argument * clone() const override=0
Create clone.