Some Kotlin delegates examples
- property delegates and class delegates
| const promiseWrapper = <T> (promise: Promise<T>): () => T => { | |
| let status = "pending"; | |
| let result: T; | |
| const s = promise.then( | |
| (value) => { | |
| status = "success"; | |
| result = value; | |
| }, | |
| (error) => { |
Some Kotlin delegates examples
| name: deploy-to-qa | |
| on: | |
| workflow_dispatch: | |
| push: | |
| tags: [ 'v*' ] | |
| jobs: | |
| update_qa: | |
| runs-on: ubuntu-latest | |
| steps: |
| viewModel.viewState.observe(viewLifecycleOwner) { state -> | |
| state takeIfSuccess { | |
| // Here's the success state | |
| } takeIfError { | |
| // Here's the error state | |
| } | |
| } |
| package com.example.grayscaleexperiment | |
| import android.content.Context | |
| import android.graphics.Canvas | |
| import android.graphics.ColorMatrix | |
| import android.graphics.ColorMatrixColorFilter | |
| import android.graphics.Paint | |
| import android.util.AttributeSet | |
| import androidx.constraintlayout.widget.ConstraintLayout |
| //https://www.intercom.com/help/en/articles/170-integrate-intercom-in-a-single-page-app | |
| const Intercom = { | |
| init: (appId) => { | |
| console.log("Intercom", "init", appId); | |
| const w = window; | |
| const ic = w.Intercom; | |
| w.intercomSettings = { | |
| horizontal_padding: 24, | |
| vertical_padding: 24, |
| package com.pantos27.gist | |
| import android.os.Bundle | |
| import androidx.fragment.app.DialogFragment | |
| import androidx.fragment.app.FragmentManager | |
| import android.view.LayoutInflater | |
| import android.view.View | |
| import android.view.ViewGroup | |
| import android.view.Window | |
| import android.widget.FrameLayout |
| package com.pantos27.gist | |
| class KotlinView @JvmOverloads constructor( | |
| context: Context, attrs: AttributeSet? = null, defStyleAttr: Int = 0 | |
| ) : View(context, attrs, defStyleAttr){ | |
| init{ | |
| //init stuff | |
| } | |
| } |
| package com.pantos27.hamburgersforbreakfast | |
| import android.app.Activity | |
| import android.os.Bundle | |
| /** | |
| * A utility class to keep track if your app is in the foreground or background | |
| * without any special permission or API restrictions | |
| * Note that if your app has any activities that run on a different | |
| * process (through the process attribute in your manifest) this utility might not be persistent | |
| * |
| package com.pantos27.someproject.recycler | |
| import android.support.annotation.IdRes | |
| import android.support.v7.widget.RecyclerView | |
| import android.view.View | |
| import android.view.ViewGroup | |
| import android.widget.ImageView | |
| import android.widget.TextView | |
| import java.util.* |