Skip to content

Commit

Permalink
Deploy preview for PR 216 🛫
Browse files Browse the repository at this point in the history
  • Loading branch information
emilkrebs committed Dec 22, 2023
1 parent 3d1f043 commit 97684ac
Show file tree
Hide file tree
Showing 47 changed files with 2,437 additions and 1,476 deletions.
36 changes: 18 additions & 18 deletions pr-previews/pr-216/404.html

Large diffs are not rendered by default.

109 changes: 58 additions & 51 deletions pr-previews/pr-216/docs/configuration-services/index.html

Large diffs are not rendered by default.

111 changes: 59 additions & 52 deletions pr-previews/pr-216/docs/document-lifecycle/index.html

Large diffs are not rendered by default.

119 changes: 63 additions & 56 deletions pr-previews/pr-216/docs/getting-started/index.html

Large diffs are not rendered by default.

109 changes: 58 additions & 51 deletions pr-previews/pr-216/docs/grammar-language/index.html

Large diffs are not rendered by default.

107 changes: 57 additions & 50 deletions pr-previews/pr-216/docs/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion pr-previews/pr-216/docs/index.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Documentation on Langium</title><link>/docs/</link><description>Recent content in Documentation on Langium</description><generator>Hugo -- gohugo.io</generator><atom:link href="/docs/index.xml" rel="self" type="application/rss+xml"/><item><title>Getting Started</title><link>/docs/getting-started/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/getting-started/</guid><description>Before diving into Langium itself, let&amp;rsquo;s get your environment ready for development:
You have a working Node environment with version 12 or higher. Install Yeoman and the Langium extension generator. npm i -g yo generator-langium For our getting started example, we would also recommend you to install the latest version of vscode.
You have a working Node environment with version 16 or higher. Install Yeoman and the Langium extension generator. npm i -g yo generator-langium For our getting started example, we would also recommend you to install the latest version of vscode.
Your first example language To create your first working DSL, execute the yeoman generator:</description></item><item><title>The Grammar Language</title><link>/docs/grammar-language/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/grammar-language/</guid><description>The grammar language describes the syntax and structure of your language. The Langium grammar language is implemented using Langium itself and therefore follows the same syntactic rules as any language created with Langium. The grammar language will define the structure of the abstract syntax tree (AST) which in Langium is a collection of TypeScript types describing the content of a parsed document and organized hierarchically. The individual nodes of the tree are then represented with JavaScript objects at runtime.</description></item><item><title>Semantic Model Inference</title><link>/docs/sematic-model/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/sematic-model/</guid><description>When AST nodes are created during the parsing of a document, they are given a type. The language grammar dictates the shape of those types and how they might be related to each other. All types form the semantic model of your language. There are two ways by which Langium derives semantic model types from the grammar, by inference and by declaration.
Inference is the default behavior in Langium. During the generation of the semantic model types, Langium infers the possible types directly from the grammar rules.</description></item><item><title>Configuration via Services</title><link>/docs/configuration-services/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/docs/configuration-services/</guid><description>Langium supports the configuration of most aspects of your language and language server via a set of services. Those services are configured by modules, which are essentially mappings from a service name to its implementation.
We can separate services and modules into two main categories:
Expand Down
115 changes: 61 additions & 54 deletions pr-previews/pr-216/docs/langium-overview/index.html

Large diffs are not rendered by default.

111 changes: 59 additions & 52 deletions pr-previews/pr-216/docs/sematic-model/index.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion pr-previews/pr-216/en.search-data.min.json

Large diffs are not rendered by default.

111 changes: 59 additions & 52 deletions pr-previews/pr-216/guides/builtin-library/index.html

Large diffs are not rendered by default.

111 changes: 59 additions & 52 deletions pr-previews/pr-216/guides/code-bundling/index.html

Large diffs are not rendered by default.

109 changes: 58 additions & 51 deletions pr-previews/pr-216/guides/formatting/index.html

Large diffs are not rendered by default.

107 changes: 57 additions & 50 deletions pr-previews/pr-216/guides/index.html

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion pr-previews/pr-216/guides/index.xml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Guides on Langium</title><link>/guides/</link><description>Recent content in Guides on Langium</description><generator>Hugo -- gohugo.io</generator><atom:link href="/guides/index.xml" rel="self" type="application/rss+xml"/><item><title>Builtin Libraries</title><link>/guides/builtin-library/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/guides/builtin-library/</guid><description>Languages usually offer their users some high-level programming features that they do not have to define themselves. For example, TypeScript provides users with typings for globally accessible variables such as the window, process or console objects. They are part of the JavaScript runtime, and not defined by any user or a package they might import. Instead, these features are contributed through what we call builtin libraries.
Loading a builtin library in Langium is very simple.</description></item><item><title>Formatting</title><link>/guides/formatting/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/guides/formatting/</guid><description>Langium&amp;rsquo;s formatting API allows to easily create formatters for your language. We start building a custom formatter for our language by creating a new class that inherits from AbstractFormatter.
import { AbstractFormatter, AstNode, Formatting } from 'langium'; export class CustomFormatter extends AbstractFormatter { protected format(node: AstNode): void { // This method is called for every AstNode in a document } } ... // Bind the class in your module export const CustomModule: Module&amp;lt;CustomServices, PartialLangiumServices&amp;gt; = { lsp: { Formatter: () =&amp;gt; new CustomFormatter() } }; The entry point for the formatter is the abstract format(AstNode) method.</description></item><item><title>Code Bundling</title><link>/guides/code-bundling/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/guides/code-bundling/</guid><description>When you first create a Langium project using the Yeoman generator, it will only contain a plain TypeScript configuration, without any additional build processes. However, if you want to make your language available for consumption in a non-development context, you&amp;rsquo;ll want to create a bundle. It is not absolutely necessary in a Node.js context, since you can always resolve local node_modules but it&amp;rsquo;s still recommended for vscode extensions. It improves performance and decreases file size by minifying your code and only including what you actually need.</description></item></channel></rss>
import { AbstractFormatter, AstNode, Formatting } from 'langium'; export class CustomFormatter extends AbstractFormatter { protected format(node: AstNode): void { // This method is called for every AstNode in a document } } ... // Bind the class in your module export const CustomModule: Module&amp;lt;CustomServices, PartialLangiumServices&amp;gt; = { lsp: { Formatter: () =&amp;gt; new CustomFormatter() } }; The entry point for the formatter is the abstract format(AstNode) method.</description></item><item><title>Multiple dependent languages</title><link>/guides/multiple-languages/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/guides/multiple-languages/</guid><description>This guide is about integrating multiple dependent languages in one Langium project.
One common situation where it makes sense to create dependent languages is when you only want to read concepts in one language and predefine them in another file (probably also a built-in one). Think of splitting SQL into a defining CREATE TABLE table (...)) and a reading part (SELECT * FROM table).
Notice that for n independent languages, you can simply create n independent Langium projects.</description></item><item><title>Code Bundling</title><link>/guides/code-bundling/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>/guides/code-bundling/</guid><description>When you first create a Langium project using the Yeoman generator, it will only contain a plain TypeScript configuration, without any additional build processes. However, if you want to make your language available for consumption in a non-development context, you&amp;rsquo;ll want to create a bundle. It is not absolutely necessary in a Node.js context, since you can always resolve local node_modules but it&amp;rsquo;s still recommended for vscode extensions. It improves performance and decreases file size by minifying your code and only including what you actually need.</description></item></channel></rss>
799 changes: 799 additions & 0 deletions pr-previews/pr-216/guides/multiple-languages/index.html

Large diffs are not rendered by default.

111 changes: 59 additions & 52 deletions pr-previews/pr-216/guides/scoping/class-member/index.html

Large diffs are not rendered by default.

111 changes: 59 additions & 52 deletions pr-previews/pr-216/guides/scoping/index.html

Large diffs are not rendered by default.

109 changes: 58 additions & 51 deletions pr-previews/pr-216/guides/scoping/qualified-name/index.html

Large diffs are not rendered by default.

44 changes: 22 additions & 22 deletions pr-previews/pr-216/imprint/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,25 +15,25 @@
<meta name=twitter:description content="Information about the responsible author of this website">
<meta name=twitter:image content>
<meta name=twitter:title content="Imprint">
<link rel=apple-touch-icon sizes=180x180 href=/assets/nib.svg>
<link rel=icon type=image/svg+xml href=/assets/nib.svg>
<link rel=icon type=image/png sizes=32x32 href=/favicon/32px.png>
<link rel=icon type=image/png sizes=16x16 href=/favicon/16px.png>
<link rel=mask-icon href=/img/safari-pinned-tab.svg color=#00b4b6>
<link rel=stylesheet href=/css/style.css>
<link rel=apple-touch-icon sizes=180x180 href=../assets/nib.svg>
<link rel=icon type=image/svg+xml href=../assets/nib.svg>
<link rel=icon type=image/png sizes=32x32 href=../favicon/32px.png>
<link rel=icon type=image/png sizes=16x16 href=../favicon/16px.png>
<link rel=mask-icon href=../img/safari-pinned-tab.svg color=#00b4b6>
<link rel=stylesheet href=../css/style.css>
<link rel=preconnect href=https://fonts.googleapis.com>
<link rel=preconnect href=https://fonts.gstatic.com crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@300&display=swap" rel=stylesheet>
<link rel=preload href=/custom.css as=style>
<link rel=stylesheet href=/custom.css media=all>
<link rel=preload href=../custom.css as=style>
<link rel=stylesheet href=../custom.css media=all>
</head>
<body class="bg-white dark:bg-gray-900 dark:text-gray-100">
<div x-data="{ isOpen: false }" class="wrapper relative bg-white dark:bg-gray-900">
<header id=website-header class="sm:sticky top-0 z-50 bg-white dark:bg-gray-900 font-mono flex justify-between items-center px-4 py-6 sm:px-6 md:space-x-10">
<div class="flex justify-start lg:w-0 lg:flex-1">
<a href=/#>
<a href=../#>
<span class=sr-only>Workflow</span>
<img id=website-logo class="h-12 w-auto" src=/assets/langium_logo_w_nib.svg alt>
<img id=website-logo class="h-12 w-auto" src=../assets/langium_logo_w_nib.svg alt>
</a>
</div>
<div class="-mr-2 -my-2 md:hidden">
Expand All @@ -42,20 +42,20 @@
</button>
</div>
<nav class="items-center hidden space-x-10 md:flex text-gray-1000 dark:text-gray-100 lg:px-12">
<a href=/docs/ class=nav-link-desktop>
<a href=../docs/ class=nav-link-desktop>
Documentation
</a>
<a href=/showcase/ class=nav-link-desktop>
<a href=../showcase/ class=nav-link-desktop>
Showcase
</a>
<a href=/playground/ class=nav-link-desktop>
<a href=../playground/ class=nav-link-desktop>
Playground
</a>
<a href=https://www.typefox.io/language-engineering/ class="nav-link-desktop text-emeraldLangium dark:text-emeraldLangium">
Support
</a>
<a class="w-10 h-10" target=_blank href=https://github.com/eclipse-langium/langium>
<img src=/assets/GitHub-Mark-Light-120px-plus.png alt=GitHub>
<img src=../assets/GitHub-Mark-Light-120px-plus.png alt=GitHub>
</a>
</nav>
</header>
Expand Down Expand Up @@ -164,7 +164,7 @@ <h2 class="text-center text-2xl tracking-tight sm:text-3xl lg:text-4xl mt-20">
</div>
<span class="text-lg hidden md:inline">|</span>
<div class="hover:underline px-4 block text-left md:text-center m-4" style=width:180px>
<a href=/imprint>
<a href=../imprint>
Imprint
</a>
</div>
Expand All @@ -173,8 +173,8 @@ <h2 class="text-center text-2xl tracking-tight sm:text-3xl lg:text-4xl mt-20">
<div class="rounded-lg shadow-lg ring-1 ring-black ring-opacity-5 bg-white dark:bg-gray-900 divide-y-2 divide-gray-50">
<div class="pt-5 pb-6 px-5">
<div class="flex items-center justify-between">
<a href=/#>
<img class="h-10 w-auto" src=/assets/langium_logo_w_nib.svg alt=Workflow>
<a href=../#>
<img class="h-10 w-auto" src=../assets/langium_logo_w_nib.svg alt=Workflow>
</a>
<div class=-mr-2>
<button @click="isOpen = false" type=button class="mobile-menu-btn p-2 inline-flex
Expand All @@ -187,20 +187,20 @@ <h2 class="text-center text-2xl tracking-tight sm:text-3xl lg:text-4xl mt-20">
</div>
<div :class="{'hidden': !isOpen}" class="mt-6 mobile-menu">
<nav class="flex flex-col items-center dark:text-gray-200 text-gray-900">
<a href=/docs/ class=nav-link-mobile>
<a href=../docs/ class=nav-link-mobile>
Documentation
</a>
<a href=/showcase/ class=nav-link-mobile>
<a href=../showcase/ class=nav-link-mobile>
Showcase
</a>
<a href=/playground/ class=nav-link-mobile>
<a href=../playground/ class=nav-link-mobile>
Playground
</a>
<a href=https://www.typefox.io/language-engineering/ class=nav-link-mobile>
Support
</a>
<a class="w-10 h-10" target=_blank href=https://github.com/eclipse-langium/langium>
<img src=/assets/GitHub-Mark-Light-120px-plus.png alt=GitHub>
<img src=../assets/GitHub-Mark-Light-120px-plus.png alt=GitHub>
</a>
</nav>
</div>
Expand All @@ -213,6 +213,6 @@ <h2 class="text-center text-2xl tracking-tight sm:text-3xl lg:text-4xl mt-20">
<script src=https://cdnjs.cloudflare.com/ajax/libs/gsap/3.8.0/Draggable.min.js></script>
<script src=https://cdnjs.cloudflare.com/ajax/libs/gsap/3.8.0/ScrollToPlugin.min.js></script>
<script src=https://cdnjs.cloudflare.com/ajax/libs/gsap/3.8.0/ScrollTrigger.min.js></script>
<script src=/index.js></script>
<script src=../index.js></script>
</body>
</html>
Loading

0 comments on commit 97684ac

Please sign in to comment.