summaryrefslogtreecommitdiffstats
path: root/amend/ast.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--amend/ast.h165
1 files changed, 0 insertions, 165 deletions
diff --git a/amend/ast.h b/amend/ast.h
deleted file mode 100644
index 7834a2bdd..000000000
--- a/amend/ast.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * Copyright (C) 2007 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef AMEND_AST_H_
-#define AMEND_AST_H_
-
-#include "commands.h"
-
-typedef struct AmStringValue AmStringValue;
-
-typedef struct {
- int argc;
- AmStringValue *argv;
-} AmFunctionArguments;
-
-/* An internal structure used only by the parser;
- * will not appear in the output AST.
-xxx try to move this into parser.h
- */
-typedef struct AmFunctionArgumentBuilder AmFunctionArgumentBuilder;
-struct AmFunctionArgumentBuilder {
- AmFunctionArgumentBuilder *next;
- AmStringValue *arg;
- int argCount;
-};
-
-typedef struct AmWordListBuilder AmWordListBuilder;
-struct AmWordListBuilder {
- AmWordListBuilder *next;
- const char *word;
- int wordCount;
-};
-
-typedef struct {
- const char *name;
- Function *fn;
- AmFunctionArguments *args;
-} AmFunctionCall;
-
-
-/* <string-value> ::=
- * <literal-string> |
- * <function-call>
- */
-struct AmStringValue {
- unsigned int line;
-
- enum {
- AM_SVAL_LITERAL,
- AM_SVAL_FUNCTION,
- } type;
- union {
- const char *literal;
-//xxx inline instead of using pointers
- AmFunctionCall *function;
- } u;
-};
-
-
-/* <string-comparison-expression> ::=
- * <string-value> <string-comparison-operator> <string-value>
- */
-typedef struct {
- unsigned int line;
-
- enum {
- AM_SOP_LT,
- AM_SOP_LE,
- AM_SOP_GT,
- AM_SOP_GE,
- AM_SOP_EQ,
- AM_SOP_NE,
- } op;
- AmStringValue *arg1;
- AmStringValue *arg2;
-} AmStringComparisonExpression;
-
-
-/* <boolean-expression> ::=
- * ! <boolean-value> |
- * <boolean-value> <binary-boolean-operator> <boolean-value>
- */
-typedef struct AmBooleanValue AmBooleanValue;
-typedef struct {
- unsigned int line;
-
- enum {
- AM_BOP_NOT,
-
- AM_BOP_EQ,
- AM_BOP_NE,
-
- AM_BOP_AND,
-
- AM_BOP_OR,
- } op;
- AmBooleanValue *arg1;
- AmBooleanValue *arg2;
-} AmBooleanExpression;
-
-
-/* <boolean-value> ::=
- * <boolean-expression> |
- * <string-comparison-expression>
- */
-struct AmBooleanValue {
- unsigned int line;
-
- enum {
- AM_BVAL_EXPRESSION,
- AM_BVAL_STRING_COMPARISON,
- } type;
- union {
- AmBooleanExpression expression;
- AmStringComparisonExpression stringComparison;
- } u;
-};
-
-
-typedef struct {
- unsigned int line;
-
- int argc;
- const char **argv;
-} AmWordList;
-
-
-typedef struct {
- bool booleanArgs;
- union {
- AmWordList *w;
- AmBooleanValue *b;
- } u;
-} AmCommandArguments;
-
-typedef struct {
- unsigned int line;
-
- const char *name;
- Command *cmd;
- AmCommandArguments *args;
-} AmCommand;
-
-typedef struct {
- AmCommand **commands;
- int commandCount;
- int arraySize;
-} AmCommandList;
-
-void dumpCommandList(const AmCommandList *commandList);
-
-#endif // AMEND_AST_H_