Skip to content

Commit

Permalink
Merge pull request #7 from superindustries/feature/profile-ast-docume…
Browse files Browse the repository at this point in the history
…ntation

Feature/profile ast documentation
  • Loading branch information
lukas-valenta authored Jul 8, 2020
2 parents adf7e61 + f7587b9 commit ce28cfd
Show file tree
Hide file tree
Showing 6 changed files with 200 additions and 122 deletions.
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@superindustries/language",
"version": "0.1.4",
"description": "Level 5 autonomous, self-driving API client, https://superface.ai",
"version": "0.2.0",
"description": "Superface profile and map language ASTs, https://superface.ai",
"main": "dist/language.js",
"source": "src/index.ts",
"module": "dist/language.modern.js",
Expand Down
1 change: 1 addition & 0 deletions src/interfaces/ast/index.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
export * from './map-ast';
export * from './map-ast.utils';
export * from './profile-ast';
16 changes: 7 additions & 9 deletions src/interfaces/ast/map-ast.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import { Location, Span } from './source';

export type MapNodeKind =
| 'EvalDefinition'
| 'HTTPOperationDefinition'
Expand All @@ -16,14 +18,10 @@ export type MapNodeKind =
| 'StepDefinition'
| 'VariableExpressionsDefinition';

export interface Location {
start: number;
end: number;
}

export interface MapASTNodeBase {
kind: MapNodeKind;
loc?: Location;
span?: Span;
location?: Location;
}

export interface JSExpressionNode extends MapASTNodeBase {
Expand Down Expand Up @@ -111,7 +109,7 @@ export interface OperationDefinitionNode extends MapASTNodeBase {
stepsDefinition: StepDefinitionNode[];
}

export interface ProfileIdNode extends MapASTNodeBase {
export interface MapProfileIdNode extends MapASTNodeBase {
kind: 'ProfileId';
profileId: string;
}
Expand All @@ -123,7 +121,7 @@ export interface ProviderNode extends MapASTNodeBase {

export interface MapNode extends MapASTNodeBase {
kind: 'Map';
profileId: ProfileIdNode;
profileId: MapProfileIdNode;
provider: ProviderNode;
}

Expand Down Expand Up @@ -154,7 +152,7 @@ export type MapASTNode =
| OperationCallDefinitionNode
| OperationDefinitionNode
| OutcomeDefinitionNode
| ProfileIdNode
| MapProfileIdNode
| ProviderNode
| StepDefinitionNode
| VariableExpressionDefinitionNode;
8 changes: 4 additions & 4 deletions src/interfaces/ast/map-ast.utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ import {
MapDocumentNode,
MapExpressionDefinitionNode,
MapNode,
MapProfileIdNode,
NetworkOperationDefinitionNode,
OperationCallDefinitionNode,
OperationDefinitionNode,
OutcomeDefinitionNode,
ProfileIdNode,
ProviderNode,
StepDefinitionNode,
VariableExpressionDefinitionNode,
Expand Down Expand Up @@ -90,9 +90,9 @@ export function assertIsOperationDefinitionNode(
checkNode(node, 'OperationDefinition');
}

export function assertIsProfileIdNode(
export function assertIsMapProfileIdNode(
node: MapASTNode
): asserts node is ProfileIdNode {
): asserts node is MapProfileIdNode {
checkNode(node, 'ProfileId');
}

Expand Down Expand Up @@ -182,7 +182,7 @@ export function isOperationDefinitionNode(
return node.kind === 'OperationDefinition';
}

export function isProfileIdNode(node: MapASTNode): node is ProfileIdNode {
export function isProfileIdNode(node: MapASTNode): node is MapProfileIdNode {
return node.kind === 'ProfileId';
}

Expand Down
Loading

0 comments on commit ce28cfd

Please sign in to comment.